Devices, methods, and graphical user interfaces for selecting and interacting with different device modes

ABSTRACT

A method is performed at a mobile device with a display. The method includes displaying a first mode of a plurality of modes of the device. The first mode of the device is active when a first set of time and/or device location criteria are met and the second mode of the device is active when a second set of time and/or device location criteria are met. While the first set of time and/or device location criteria are met and the first mode of the device is active, the mobile device detects a first input that overrides the first mode of the device. In response to detecting the first input, the mobile device activates the second mode of the device. The mobile device detects a second input and, in response to detecting the second input, performs an operation in the second mode of the device.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.15/707,757, filed Sep. 18, 2017, which claims priority to U.S.Provisional Application Ser. No. 62/399,394, filed Sep. 24, 2016, eachof which is incorporated herein by reference in its entirety.

TECHNICAL FIELD

This relates generally to electronic devices, including but not limitedto electronic devices that provide different operating modes withcontext-based functionality.

BACKGROUND

The use of portable electronic devices has increased significantly inrecent years. Example portable electronic devices include smart watches,mobile phones, tablets, and laptops.

As portable devices become more integrated into a user's dailyactivities, the number of functions with which a user regularlyinteracts grows. One way to manage the growing number of regularly usedapplications, content, and device settings is to have differentoperating modes for the device (e.g., a work mode, a home mode, adriving mode, and/or a workout mode) that group together regularly usedfunctions/applications in a tailored user interface for a given mode.However, conventional methods for selecting and interacting withdifferent device modes are tedious and inefficient. In addition,selecting and interacting with different device modes takes longer thannecessary, thereby wasting energy. This latter consideration isparticularly important in battery-operated devices.

SUMMARY

Accordingly, there is a need for portable electronic devices withfaster, more efficient methods and interfaces for selecting andinteracting with different device modes. Such methods and interfacesoptionally complement or replace conventional methods for selecting andinteracting with different device modes. Such methods and interfacesreduce the number, extent, and/or nature of the inputs from a user andproduce a more efficient human-machine interface. For battery-operateddevices, such methods and interfaces conserve power and increase thetime between battery charges.

The above deficiencies and other problems associated with userinterfaces for portable electronic devices are reduced or eliminated bythe disclosed devices. In some embodiments, the device has a touchpad.In some embodiments, the device has a touch-sensitive display (alsoknown as a “touch screen” or “touch-screen display”). In someembodiments, the device has a graphical user interface (GUI), one ormore processors, memory and one or more modules, programs or sets ofinstructions stored in the memory for performing multiple functions. Insome embodiments, the user interacts with the GUI primarily throughstylus and/or finger contacts and gestures on the touch-sensitivesurface. In some embodiments, the functions optionally include imageediting, drawing, presenting, word processing, website creating, diskauthoring, spreadsheet making, game playing, telephoning, videoconferencing, e-mailing, instant messaging, workout support, digitalphotographing, digital videoing, web browsing, digital music playing,and/or digital video playing. Executable instructions for performingthese functions are, optionally, included in a non-transitory computerreadable storage medium or other computer program product configured forexecution by one or more processors.

In accordance with some embodiments, a method is performed at anelectronic device with a display. The method includes: displaying afirst mode of a plurality of modes of the device, wherein: the pluralityof modes of the device includes the first mode and a second mode; thefirst mode of the device is active when a first set of time and/ordevice location criteria are met; and the second mode of the device isactive when a second set of time and/or device location criteria,distinct from the first set of time and/or device location criteria, aremet; and, while the first set of time and/or device location criteriaare met: while the first mode of the device is active, detecting a firstinput that overrides the first mode of the device; in response todetecting the first input, activating the second mode of the device;after responding to the first input, while the second mode of the deviceis active, detecting a second input; in response to detecting the secondinput, performing an operation in the second mode of the device; and,after performing the operation in the second mode of the device,returning to the first mode of the device.

In accordance with some embodiments, a method is performed at anelectronic device with a display. The method includes: concurrentlydisplaying a plurality of mode affordances, wherein: the plurality ofmode affordances includes a first mode affordance that, when activated,initiates a first mode of the mobile device; the plurality of modeaffordances includes a second mode affordance that, when activated,initiates a second mode of the mobile device, distinct from the firstmode of the mobile device; and the mobile device is configured torecommend activating a respective mode of the device in accordance witha determination that a respective set of time and/or device locationcriteria that correspond to the respective mode of the device are met;determining that a first set of time and/or device location criteriathat correspond to the first mode of the device are met; in response todetermining that the first set of time and/or device location criteriaare met, displaying a visual indication that corresponds to arecommendation to activate the first mode of the device; while the firstset of time and/or device location criteria are met and the visualindication that corresponds to the recommendation to activate the firstmode of the device is displayed, detecting activation of a respectivemode affordance in the plurality of concurrently displayed modeaffordances; and, in response to detecting activation of the respectivemode affordance in the plurality of concurrently displayed modeaffordances: ceasing to display the plurality of mode affordances; andactivating a mode of the device that corresponds to the respective modeaffordance.

In accordance with some embodiments, an electronic device includes adisplay unit and a processing unit coupled with the display unit. Theprocessing unit is configured to: enable display a first mode of aplurality of modes of the device, wherein: the plurality of modes of thedevice includes the first mode and a second mode; the first mode of thedevice is active when a first set of time and/or device locationcriteria are met; and the second mode of the device is active when asecond set of time and/or device location criteria, distinct from thefirst set of time and/or device location criteria, are met; and, whilethe first set of time and/or device location criteria are met: while thefirst mode of the device is active, detect a first input that overridesthe first mode of the device; in response to detecting the first input,activate the second mode of the device; after responding to the firstinput, while the second mode of the device is active, detect a secondinput; in response to detecting the second input, perform an operationin the second mode of the device; and, after performing the operation inthe second mode of the device, return to the first mode of the device.

In accordance with some embodiments, an electronic device includes adisplay unit and a processing unit coupled with the display unit. Theprocessing unit is configured to: concurrently enable display of aplurality of mode affordances, wherein: the plurality of modeaffordances includes a first mode affordance that, when activated,initiates a first mode of the mobile device; the plurality of modeaffordances includes a second mode affordance that, when activated,initiates a second mode of the mobile device, distinct from the firstmode of the mobile device; and the mobile device is configured torecommend activating a respective mode of the device in accordance witha determination that a respective set of time and/or device locationcriteria that correspond to the respective mode of the device are met;determine that a first set of time and/or device location criteria thatcorrespond to the first mode of the device are met; in response todetermining that the first set of time and/or device location criteriaare met, enable display of a visual indication that corresponds to arecommendation to activate the first mode of the device; while the firstset of time and/or device location criteria are met and the visualindication that corresponds to the recommendation to activate the firstmode of the device is displayed, detect activation of a respective modeaffordance in the plurality of concurrently displayed mode affordances;and, in response to detecting activation of the respective modeaffordance in the plurality of concurrently displayed mode affordances:cease to display the plurality of mode affordances; and activate a modeof the device that corresponds to the respective mode affordance.

In accordance with some embodiments, an electronic device includes adisplay, optionally a touch-sensitive surface, optionally one or moresensors to detect intensities of contacts with the touch-sensitivesurface, one or more processors, memory, and one or more programs; theone or more programs are stored in the memory and configured to beexecuted by the one or more processors and the one or more programsinclude instructions for performing or causing performance of theoperations of any of the methods described herein. In accordance withsome embodiments, a computer readable storage medium has stored thereininstructions which when executed by an electronic device with a display,optionally a touch-sensitive surface, and optionally one or more sensorsto detect intensities of contacts with the touch-sensitive surface,cause the device to perform or cause performance of the operations ofany of the methods described herein. In accordance with someembodiments, a graphical user interface on an electronic device with adisplay, optionally a touch-sensitive surface, optionally one or moresensors to detect intensities of contacts with the touch-sensitivesurface, a memory, and one or more processors to execute one or moreprograms stored in the memory includes one or more of the elementsdisplayed in any of the methods described above, which are updated inresponse to inputs, as described in any of the methods described herein.In accordance with some embodiments, an electronic device includes: adisplay, optionally a touch-sensitive surface, and optionally one ormore sensors to detect intensities of contacts with the touch-sensitivesurface; and means for performing or causing performance of theoperations of any of the methods described herein. In accordance withsome embodiments, an information processing apparatus, for use in anelectronic device with a display, optionally a touch-sensitive surface,and optionally one or more sensors to detect intensities of contactswith the touch-sensitive surface, includes means for performing orcausing performance of the operations of any of the methods describedherein.

Thus, electronic devices with displays, optionally touch-sensitivesurfaces, and optionally one or more sensors to detect intensities ofcontacts with the touch-sensitive surface are provided with faster, moreefficient methods and interfaces for selecting and interacting withdifferent device modes, thereby increasing the effectiveness,efficiency, and user satisfaction with such devices. Such methods andinterfaces may complement or replace conventional methods for selectingand interacting with different device modes.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the various described embodiments,reference should be made to the Description of Embodiments below, inconjunction with the following drawings in which like reference numeralsrefer to corresponding parts throughout the figures.

FIG. 1A is a block diagram illustrating a portable multifunction devicewith a touch-sensitive display in accordance with some embodiments.

FIG. 1B is a block diagram illustrating example components for eventhandling in accordance with some embodiments.

FIG. 2 illustrates a portable multifunction device having a touch screenin accordance with some embodiments.

FIG. 3 is a block diagram of an example multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments.

FIG. 4A illustrates an example user interface for a menu of applicationson a portable multifunction device in accordance with some embodiments.

FIG. 4B illustrates an example user interface for a multifunction devicewith a touch-sensitive surface that is separate from the display inaccordance with some embodiments.

FIGS. 4C-4E illustrate examples of dynamic intensity thresholds inaccordance with some embodiments.

FIGS. 5A-5U illustrate example user interfaces for selecting andinteracting with device modes in accordance with some embodiments.

FIGS. 6A-6C are flow diagrams illustrating a method of overriding adevice mode in accordance with some embodiments.

FIGS. 7A-7B are flow diagrams illustrating a method of recommending andactivating a device mode in accordance with some embodiments.

FIGS. 8-9 are functional block diagrams of an electronic device inaccordance with some embodiments.

DESCRIPTION OF EMBODIMENTS

Many portable electronic devices have a large number of featuresincluding applications, controls, and content with which a user engages,as well as settings that impact the functionality of the electronicdevice. A user may typically use different device features depending oncontextual factors such as the time of day and/or the user's location.For example, at home, a user may frequently use applications related toentertainment, media delivery, and home automation, while theseapplications are less frequently accessed when the user is at work.Applications related to appointment scheduling and communication mayplay a larger role in device usage while the user is at work, ascompared with other contexts. Within a particular communicationsapplication, such as a messaging application, a user may wish to viewmessages from contacts the user associates with a particular settingonly when the user is present within that setting. The user may preferfor a device to always establish a connection to a particular network ornetwork type in some contexts, and to connect to that network or networktype only on an opt-in basis in other contexts. Device modes are a wayto tie device features such as applications, controls, content, andsettings to particular contexts (e.g., work, home, driving, or workout).A mobile device may use information such as time and device location todetermine a device mode and apply and/or display a particular set offeatures that are desirable in that device mode. This streamlines accessto device features, thereby reducing or eliminating the time spent by auser navigating user interfaces to locate desired features.

Here, improved ways to select device modes and interact with devicemodes are described.

In some embodiments, the device displays a plurality of mode icons(e.g., on a lock screen or wake screen), and visually highlights themode icon that corresponds to the mode automatically recommended by thedevice (e.g., based on time and/or device location criteria), whichhelps the user to select the proper mode. The user then selects therecommended mode icon or another mode icon to activate the correspondingmode.

In some embodiments, while in a first device mode, the device detects aninput that overrides the first mode and activates a second mode. Thedevice performs an operation while in the second mode in response toanother input, and then returns to the first mode. This method helps auser to interact with different modes. The user can easily leave a firstmode, perform an operation in a second mode, and then return to thefirst mode.

Below, FIGS. 1A-1B, 2, and 3 provide a description of example devices.FIGS. 4A-4B and 5A-5U illustrate example user interfaces for interactingwith device modes. FIGS. 6A-6C illustrate a flow diagram of a method ofoverriding a device mode. FIGS. 7A-7B illustrate a flow diagram of amethod of recommending and activating a device mode from among aplurality of displayed mode affordances. The user interfaces in FIGS.5A-5U are used to illustrate the processes in FIGS. 6A-6C and 7A-7B.

Example Devices

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings. In the following detaileddescription, numerous specific details are set forth in order to providea thorough understanding of the various described embodiments. However,it will be apparent to one of ordinary skill in the art that the variousdescribed embodiments may be practiced without these specific details.In other instances, well-known methods, procedures, components,circuits, and networks have not been described in detail so as not tounnecessarily obscure aspects of the embodiments.

It will also be understood that, although the terms first, second, etc.are, in some instances, used herein to describe various elements, theseelements should not be limited by these terms. These terms are only usedto distinguish one element from another. For example, a first contactcould be termed a second contact, and, similarly, a second contact couldbe termed a first contact, without departing from the scope of thevarious described embodiments. The first contact and the second contactare both contacts, but they are not the same contact, unless the contextclearly indicates otherwise.

The terminology used in the description of the various describedembodiments herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used in thedescription of the various described embodiments and the appendedclaims, the singular forms “a,” “an,” and “the” are intended to includethe plural forms as well, unless the context clearly indicatesotherwise. It will also be understood that the term “and/or” as usedherein refers to and encompasses any and all possible combinations ofone or more of the associated listed items. It will be furtherunderstood that the terms “includes,” “including,” “comprises,” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof.

As used herein, the term “if” is, optionally, construed to mean “when”or “upon” or “in response to determining” or “in response to detecting,”depending on the context. Similarly, the phrase “if it is determined” or“if [a stated condition or event] is detected” is, optionally, construedto mean “upon determining” or “in response to determining” or “upondetecting [the stated condition or event]” or “in response to detecting[the stated condition or event],” depending on the context.

Embodiments of electronic devices, user interfaces for such devices, andassociated processes for using such devices are described. In someembodiments, the device is a portable communications device, such as amobile telephone, that also contains other functions, such as PDA and/ormusic player functions. Example embodiments of portable multifunctiondevices include, without limitation, the iPhone®, iPod Touch®, and iPad®devices from Apple Inc. of Cupertino, Calif. Other portable electronicdevices, such as laptops or tablet computers with touch-sensitivesurfaces (e.g., touch-screen displays and/or touchpads), are,optionally, used. It should also be understood that, in someembodiments, the device is not a portable communications device, but isa desktop computer with a touch-sensitive surface (e.g., a touch-screendisplay and/or a touchpad).

In the discussion that follows, an electronic device that includes adisplay and a touch-sensitive surface is described. It should beunderstood, however, that the electronic device optionally includes oneor more other physical user-interface devices, such as a physicalkeyboard, a mouse and/or a joystick.

The device typically supports a variety of applications, such as one ormore of the following: a note taking application, a drawing application,a presentation application, a word processing application, a websitecreation application, a disk authoring application, a spreadsheetapplication, a gaming application, a telephone application, a videoconferencing application, an e-mail application, an instant messagingapplication, a workout support application, a photo managementapplication, a digital camera application, a digital video cameraapplication, a web browsing application, a digital music playerapplication, and/or a digital video player application.

The various applications that are executed on the device optionally useat least one common physical user-interface device, such as thetouch-sensitive surface. One or more functions of the touch-sensitivesurface as well as corresponding information displayed on the deviceare, optionally, adjusted and/or varied from one application to the nextand/or within a respective application. In this way, a common physicalarchitecture (such as the touch-sensitive surface) of the deviceoptionally supports the variety of applications with user interfacesthat are intuitive and transparent to the user.

Attention is now directed toward embodiments of portable devices withtouch-sensitive displays. FIG. 1A is a block diagram illustratingportable multifunction device 100 with touch-sensitive display system112 in accordance with some embodiments. Touch-sensitive display system112 is sometimes called a “touch screen” for convenience, and issometimes simply called a touch-sensitive display. Device 100 includesmemory 102 (which optionally includes one or more computer readablestorage mediums), memory controller 122, one or more processing units(CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry110, speaker 111, microphone 113, input/output (I/O) subsystem 106,other input or control devices 116, and external port 124. Device 100optionally includes one or more optical sensors 164. Device 100optionally includes one or more intensity sensors 165 for detectingintensity of contacts on device 100 (e.g., a touch-sensitive surfacesuch as touch-sensitive display system 112 of device 100). Device 100optionally includes one or more tactile output generators 163 forgenerating tactile outputs on device 100 (e.g., generating tactileoutputs on a touch-sensitive surface such as touch-sensitive displaysystem 112 of device 100 or touchpad 355 of device 300). Thesecomponents optionally communicate over one or more communication busesor signal lines 103.

As used in the specification and claims, the term “tactile output”refers to physical displacement of a device relative to a previousposition of the device, physical displacement of a component (e.g., atouch-sensitive surface) of a device relative to another component(e.g., housing) of the device, or displacement of the component relativeto a center of mass of the device that will be detected by a user withthe user's sense of touch. For example, in situations where the deviceor the component of the device is in contact with a surface of a userthat is sensitive to touch (e.g., a finger, palm, or other part of auser's hand), the tactile output generated by the physical displacementwill be interpreted by the user as a tactile sensation corresponding toa perceived change in physical characteristics of the device or thecomponent of the device. For example, movement of a touch-sensitivesurface (e.g., a touch-sensitive display or trackpad) is, optionally,interpreted by the user as a “down click” or “up click” of a physicalactuator button. In some cases, a user will feel a tactile sensationsuch as an “down click” or “up click” even when there is no movement ofa physical actuator button associated with the touch-sensitive surfacethat is physically pressed (e.g., displaced) by the user's movements. Asanother example, movement of the touch-sensitive surface is, optionally,interpreted or sensed by the user as “roughness” of the touch-sensitivesurface, even when there is no change in smoothness of thetouch-sensitive surface. While such interpretations of touch by a userwill be subject to the individualized sensory perceptions of the user,there are many sensory perceptions of touch that are common to a largemajority of users. Thus, when a tactile output is described ascorresponding to a particular sensory perception of a user (e.g., an “upclick,” a “down click,” “roughness”), unless otherwise stated, thegenerated tactile output corresponds to physical displacement of thedevice or a component thereof that will generate the described sensoryperception for a typical (or average) user. Using tactile outputs toprovide haptic feedback to a user enhances the operability of the deviceand makes the user-device interface more efficient (e.g., by helping theuser to provide proper inputs and reducing user mistakes whenoperating/interacting with the device) which, additionally, reducespower usage and improves battery life of the device by enabling the userto use the device more quickly and efficiently.

It should be appreciated that device 100 is only one example of aportable multifunction device, and that device 100 optionally has moreor fewer components than shown, optionally combines two or morecomponents, or optionally has a different configuration or arrangementof the components. The various components shown in FIG. 1A areimplemented in hardware, software, firmware, or a combination thereof,including one or more signal processing and/or application specificintegrated circuits.

Memory 102 optionally includes high-speed random access memory andoptionally also includes non-volatile memory, such as one or moremagnetic disk storage devices, flash memory devices, or othernon-volatile solid-state memory devices. Access to memory 102 by othercomponents of device 100, such as CPU(s) 120 and the peripheralsinterface 118, is, optionally, controlled by memory controller 122.

Peripherals interface 118 can be used to couple input and outputperipherals of the device to CPU(s) 120 and memory 102. The one or moreprocessors 120 run or execute various software programs and/or sets ofinstructions stored in memory 102 to perform various functions fordevice 100 and to process data.

In some embodiments, peripherals interface 118, CPU(s) 120, and memorycontroller 122 are, optionally, implemented on a single chip, such aschip 104. In some other embodiments, they are, optionally, implementedon separate chips.

RF (radio frequency) circuitry 108 receives and sends RF signals, alsocalled electromagnetic signals. RF circuitry 108 converts electricalsignals to/from electromagnetic signals and communicates withcommunications networks and other communications devices via theelectromagnetic signals. RF circuitry 108 optionally includes well-knowncircuitry for performing these functions, including but not limited toan antenna system, an RF transceiver, one or more amplifiers, a tuner,one or more oscillators, a digital signal processor, a CODEC chipset, asubscriber identity module (SIM) card, memory, and so forth. RFcircuitry 108 optionally communicates with networks, such as theInternet, also referred to as the World Wide Web (WWW), an intranetand/or a wireless network, such as a cellular telephone network, awireless local area network (LAN) and/or a metropolitan area network(MAN), and other devices by wireless communication. The wirelesscommunication optionally uses any of a plurality of communicationsstandards, protocols and technologies, including but not limited toGlobal System for Mobile Communications (GSM), Enhanced Data GSMEnvironment (EDGE), high-speed downlink packet access (HSDPA),high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO),HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), nearfield communication (NFC), wideband code division multiple access(W-CDMA), code division multiple access (CDMA), time division multipleaccess (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a,IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g and/or IEEE802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol fore-mail (e.g., Internet message access protocol (IMAP) and/or post officeprotocol (POP)), instant messaging (e.g., extensible messaging andpresence protocol (XMPP), Session Initiation Protocol for InstantMessaging and Presence Leveraging Extensions (SIMPLE), Instant Messagingand Presence Service (IMPS)), and/or Short Message Service (SMS), or anyother suitable communication protocol, including communication protocolsnot yet developed as of the filing date of this document.

Audio circuitry 110, speaker 111, and microphone 113 provide an audiointerface between a user and device 100. Audio circuitry 110 receivesaudio data from peripherals interface 118, converts the audio data to anelectrical signal, and transmits the electrical signal to speaker 111.Speaker 111 converts the electrical signal to human-audible sound waves.Audio circuitry 110 also receives electrical signals converted bymicrophone 113 from sound waves. Audio circuitry 110 converts theelectrical signal to audio data and transmits the audio data toperipherals interface 118 for processing. Audio data is, optionally,retrieved from and/or transmitted to memory 102 and/or RF circuitry 108by peripherals interface 118. In some embodiments, audio circuitry 110also includes a headset jack (e.g., 212, FIG. 2). The headset jackprovides an interface between audio circuitry 110 and removable audioinput/output peripherals, such as output-only headphones or a headsetwith both output (e.g., a headphone for one or both ears) and input(e.g., a microphone).

I/O subsystem 106 couples input/output peripherals on device 100, suchas touch-sensitive display system 112 and other input or control devices116, with peripherals interface 118. I/O subsystem 106 optionallyincludes display controller 156, optical sensor controller 158,intensity sensor controller 159, haptic feedback controller 161, and oneor more input controllers 160 for other input or control devices. Theone or more input controllers 160 receive/send electrical signalsfrom/to other input or control devices 116. The other input or controldevices 116 optionally include physical buttons (e.g., push buttons,rocker buttons, etc.), dials, slider switches, joysticks, click wheels,and so forth. In some alternate embodiments, input controller(s) 160are, optionally, coupled with any (or none) of the following: akeyboard, infrared port, USB port, stylus, and/or a pointer device suchas a mouse. The one or more buttons (e.g., 208, FIG. 2) optionallyinclude an up/down button for volume control of speaker 111 and/ormicrophone 113. The one or more buttons optionally include a push button(e.g., 206, FIG. 2).

Touch-sensitive display system 112 provides an input interface and anoutput interface between the device and a user. Display controller 156receives and/or sends electrical signals from/to touch-sensitive displaysystem 112. Touch-sensitive display system 112 displays visual output tothe user. The visual output optionally includes graphics, text, icons,video, and any combination thereof (collectively termed “graphics”). Insome embodiments, some or all of the visual output corresponds to userinterface objects. As used herein, the term “affordance” refers to auser-interactive graphical user interface object (e.g., a graphical userinterface object that is configured to respond to inputs directed towardthe graphical user interface object). Examples of user-interactivegraphical user interface objects include, without limitation, a button,slider, icon, selectable menu item, switch, hyperlink, or other userinterface control.

Touch-sensitive display system 112 has a touch-sensitive surface, sensoror set of sensors that accepts input from the user based onhaptic/tactile contact. Touch-sensitive display system 112 and displaycontroller 156 (along with any associated modules and/or sets ofinstructions in memory 102) detect contact (and any movement or breakingof the contact) on touch-sensitive display system 112 and converts thedetected contact into interaction with user-interface objects (e.g., oneor more soft keys, icons, web pages or images) that are displayed ontouch-sensitive display system 112. In an example embodiment, a point ofcontact between touch-sensitive display system 112 and the usercorresponds to a finger of the user or a stylus.

Touch-sensitive display system 112 optionally uses LCD (liquid crystaldisplay) technology, LPD (light emitting polymer display) technology, orLED (light emitting diode) technology, although other displaytechnologies are used in other embodiments. Touch-sensitive displaysystem 112 and display controller 156 optionally detect contact and anymovement or breaking thereof using any of a plurality of touch sensingtechnologies now known or later developed, including but not limited tocapacitive, resistive, infrared, and surface acoustic wave technologies,as well as other proximity sensor arrays or other elements fordetermining one or more points of contact with touch-sensitive displaysystem 112. In an example embodiment, projected mutual capacitancesensing technology is used, such as that found in the iPhone®, iPodTouch®, and iPad® from Apple Inc. of Cupertino, Calif.

Touch-sensitive display system 112 optionally has a video resolution inexcess of 100 dpi. In some embodiments, the touch screen videoresolution is in excess of 400 dpi (e.g., 500 dpi, 800 dpi, or greater).The user optionally makes contact with touch-sensitive display system112 using any suitable object or appendage, such as a stylus, a finger,and so forth. In some embodiments, the user interface is designed towork with finger-based contacts and gestures, which can be less precisethan stylus-based input due to the larger area of contact of a finger onthe touch screen. In some embodiments, the device translates the roughfinger-based input into a precise pointer/cursor position or command forperforming the actions desired by the user.

In some embodiments, in addition to the touch screen, device 100optionally includes a touchpad (not shown) for activating ordeactivating particular functions. In some embodiments, the touchpad isa touch-sensitive area of the device that, unlike the touch screen, doesnot display visual output. The touchpad is, optionally, atouch-sensitive surface that is separate from touch-sensitive displaysystem 112 or an extension of the touch-sensitive surface formed by thetouch screen.

Device 100 also includes power system 162 for powering the variouscomponents. Power system 162 optionally includes a power managementsystem, one or more power sources (e.g., battery, alternating current(AC)), a recharging system, a power failure detection circuit, a powerconverter or inverter, a power status indicator (e.g., a light-emittingdiode (LED)) and any other components associated with the generation,management and distribution of power in portable devices.

Device 100 optionally also includes one or more optical sensors 164.FIG. 1A shows an optical sensor coupled with optical sensor controller158 in I/O subsystem 106. Optical sensor(s) 164 optionally includecharge-coupled device (CCD) or complementary metal-oxide semiconductor(CMOS) phototransistors. Optical sensor(s) 164 receive light from theenvironment, projected through one or more lens, and converts the lightto data representing an image. In conjunction with imaging module 143(also called a camera module), optical sensor(s) 164 optionally capturestill images and/or video. In some embodiments, an optical sensor islocated on the back of device 100, opposite touch-sensitive displaysystem 112 on the front of the device, so that the touch screen isenabled for use as a viewfinder for still and/or video imageacquisition. In some embodiments, another optical sensor is located onthe front of the device so that the user's image is obtained (e.g., forselfies, for videoconferencing while the user views the other videoconference participants on the touch screen, etc.).

Device 100 optionally also includes one or more contact intensitysensors 165. FIG. 1A shows a contact intensity sensor coupled withintensity sensor controller 159 in I/O subsystem 106. Contact intensitysensor(s) 165 optionally include one or more piezoresistive straingauges, capacitive force sensors, electric force sensors, piezoelectricforce sensors, optical force sensors, capacitive touch-sensitivesurfaces, or other intensity sensors (e.g., sensors used to measure theforce (or pressure) of a contact on a touch-sensitive surface). Contactintensity sensor(s) 165 receive contact intensity information (e.g.,pressure information or a proxy for pressure information) from theenvironment. In some embodiments, at least one contact intensity sensoris collocated with, or proximate to, a touch-sensitive surface (e.g.,touch-sensitive display system 112). In some embodiments, at least onecontact intensity sensor is located on the back of device 100, oppositetouch-screen display system 112 which is located on the front of device100.

Device 100 optionally also includes one or more proximity sensors 166.FIG. 1A shows proximity sensor 166 coupled with peripherals interface118. Alternately, proximity sensor 166 is coupled with input controller160 in I/O subsystem 106. In some embodiments, the proximity sensorturns off and disables touch-sensitive display system 112 when themultifunction device is placed near the user's ear (e.g., when the useris making a phone call).

Device 100 optionally also includes one or more tactile outputgenerators 163. FIG. 1A shows a tactile output generator coupled withhaptic feedback controller 161 in I/O subsystem 106. Tactile outputgenerator(s) 163 optionally include one or more electroacoustic devicessuch as speakers or other audio components and/or electromechanicaldevices that convert energy into linear motion such as a motor,solenoid, electroactive polymer, piezoelectric actuator, electrostaticactuator, or other tactile output generating component (e.g., acomponent that converts electrical signals into tactile outputs on thedevice). Tactile output generator(s) 163 receive tactile feedbackgeneration instructions from haptic feedback module 133 and generatestactile outputs on device 100 that are capable of being sensed by a userof device 100. In some embodiments, at least one tactile outputgenerator is collocated with, or proximate to, a touch-sensitive surface(e.g., touch-sensitive display system 112) and, optionally, generates atactile output by moving the touch-sensitive surface vertically (e.g.,in/out of a surface of device 100) or laterally (e.g., back and forth inthe same plane as a surface of device 100). In some embodiments, atleast one tactile output generator sensor is located on the back ofdevice 100, opposite touch-sensitive display system 112, which islocated on the front of device 100.

Device 100 optionally also includes one or more accelerometers 167,gyroscopes 168, and/or magnetometers 169 (e.g., as part of an inertialmeasurement unit (IMU)) for obtaining information concerning theposition (e.g., attitude) of the device. FIG. 1A shows sensors 167, 168,and 169 coupled with peripherals interface 118. Alternately, sensors167, 168, and 169 are, optionally, coupled with an input controller 160in I/O subsystem 106. In some embodiments, information is displayed onthe touch-screen display in a portrait view or a landscape view based onan analysis of data received from the one or more accelerometers. Device100 optionally includes a GPS (or GLONASS or other global navigationsystem) receiver (not shown) for obtaining information concerning thelocation of device 100.

In some embodiments, the software components stored in memory 102include operating system 126, communication module (or set ofinstructions) 128, contact/motion module (or set of instructions) 130,position module (or set of instructions) 131, graphics module (or set ofinstructions) 132, haptic feedback module (or set of instructions) 133,text input module (or set of instructions) 134, Global PositioningSystem (GPS) module (or set of instructions) 135, and applications (orsets of instructions) 136. Furthermore, in some embodiments, memory 102stores device/global internal state 157, as shown in FIGS. 1A and 3.Device/global internal state 157 includes one or more of: activeapplication state, indicating which applications, if any, are currentlyactive; display state, indicating what applications, views or otherinformation occupy various regions of touch-sensitive display system112; sensor state, including information obtained from the device'svarious sensors and other input or control devices 116; and locationand/or positional information concerning the device's location and/orattitude.

Operating system 126 (e.g., iOS, Darwin, RTXC, LINUX, UNIX, OS X,WINDOWS, or an embedded operating system such as VxWorks) includesvarious software components and/or drivers for controlling and managinggeneral system tasks (e.g., memory management, storage device control,power management, etc.) and facilitates communication between varioushardware and software components.

Communication module 128 facilitates communication with other devicesover one or more external ports 124 and also includes various softwarecomponents for handling data received by RF circuitry 108 and/orexternal port 124. External port 124 (e.g., Universal Serial Bus (USB),FIREWIRE, etc.) is adapted for coupling directly to other devices orindirectly over a network (e.g., the Internet, wireless LAN, etc.). Insome embodiments, the external port is a multi-pin (e.g., 30-pin)connector that is the same as, or similar to and/or compatible with the30-pin connector used in some iPhone®, iPod Touch®, and iPad® devicesfrom Apple Inc. of Cupertino, Calif. In some embodiments, the externalport is a Lightning connector that is the same as, or similar to and/orcompatible with the Lightning connector used in some iPhone®, iPodTouch®, and iPad® devices from Apple Inc. of Cupertino, Calif.

Contact/motion module 130 optionally detects contact withtouch-sensitive display system 112 (in conjunction with displaycontroller 156) and other touch-sensitive devices (e.g., a touchpad orphysical click wheel). Contact/motion module 130 includes softwarecomponents for performing various operations related to detection ofcontact (e.g., by a finger or by a stylus), such as determining ifcontact has occurred (e.g., detecting a finger-down event), determiningan intensity of the contact (e.g., the force or pressure of the contactor a substitute for the force or pressure of the contact), determiningif there is movement of the contact and tracking the movement across thetouch-sensitive surface (e.g., detecting one or more finger-draggingevents), and determining if the contact has ceased (e.g., detecting afinger-up event or a break in contact). Contact/motion module 130receives contact data from the touch-sensitive surface. Determiningmovement of the point of contact, which is represented by a series ofcontact data, optionally includes determining speed (magnitude),velocity (magnitude and direction), and/or an acceleration (a change inmagnitude and/or direction) of the point of contact. These operationsare, optionally, applied to single contacts (e.g., one finger contactsor stylus contacts) or to multiple simultaneous contacts (e.g.,“multitouch”/multiple finger contacts and/or stylus contacts). In someembodiments, contact/motion module 130 and display controller 156 detectcontact on a touchpad.

Contact/motion module 130 optionally detects a gesture input by a user.Different gestures on the touch-sensitive surface have different contactpatterns (e.g., different motions, timings, and/or intensities ofdetected contacts). Thus, a gesture is, optionally, detected bydetecting a particular contact pattern. For example, detecting a fingertap gesture includes detecting a finger-down event followed by detectinga finger-up (lift off) event at the same position (or substantially thesame position) as the finger-down event (e.g., at the position of anicon). As another example, detecting a finger swipe gesture on thetouch-sensitive surface includes detecting a finger-down event followedby detecting one or more finger-dragging events, and subsequentlyfollowed by detecting a finger-up (lift off) event. Similarly, tap,swipe, drag, and other gestures are optionally detected for a stylus bydetecting a particular contact pattern for the stylus.

In some embodiments, detecting a finger tap gesture depends on thelength of time between detecting the finger-down event and the finger-upevent, but is independent of the intensity of the finger contact betweendetecting the finger-down event and the finger-up event. In someembodiments, a tap gesture is detected in accordance with adetermination that the length of time between the finger-down event andthe finger-up event is less than a predetermined value (e.g., less than0.1, 0.2, 0.3, 0.4 or 0.5 seconds), independent of whether the intensityof the finger contact during the tap meets a given intensity threshold(greater than a nominal contact-detection intensity threshold), such asa light press or deep press intensity threshold. Thus, a finger tapgesture can satisfy particular input criteria that do not require thatthe characteristic intensity of a contact satisfy a given intensitythreshold in order for the particular input criteria to be met. Forclarity, the finger contact in a tap gesture typically needs to satisfya nominal contact-detection intensity threshold, below which the contactis not detected, in order for the finger-down event to be detected. Asimilar analysis applies to detecting a tap gesture by a stylus or othercontact. In cases where the device is capable of detecting a finger orstylus contact hovering over a touch sensitive surface, the nominalcontact-detection intensity threshold optionally does not correspond tophysical contact between the finger or stylus and the touch sensitivesurface.

The same concepts apply in an analogous manner to other types ofgestures. For example, a swipe gesture, a pinch gesture, a depinchgesture, and/or a long press gesture are optionally detected based onthe satisfaction of criteria that are either independent of intensitiesof contacts included in the gesture, or do not require that contact(s)that perform the gesture reach intensity thresholds in order to berecognized. For example, a swipe gesture is detected based on an amountof movement of one or more contacts; a pinch gesture is detected basedon movement of two or more contacts towards each other; a depinchgesture is detected based on movement of two or more contacts away fromeach other; and a long press gesture is detected based on a duration ofthe contact on the touch-sensitive surface with less than a thresholdamount of movement. As such, the statement that particular gesturerecognition criteria do not require that the intensity of the contact(s)meet a respective intensity threshold in order for the particulargesture recognition criteria to be met means that the particular gesturerecognition criteria are capable of being satisfied if the contact(s) inthe gesture do not reach the respective intensity threshold, and arealso capable of being satisfied in circumstances where one or more ofthe contacts in the gesture do reach or exceed the respective intensitythreshold. In some embodiments, a tap gesture is detected based on adetermination that the finger-down and finger-up event are detectedwithin a predefined time period, without regard to whether the contactis above or below the respective intensity threshold during thepredefined time period, and a swipe gesture is detected based on adetermination that the contact movement is greater than a predefinedmagnitude, even if the contact is above the respective intensitythreshold at the end of the contact movement. Even in implementationswhere detection of a gesture is influenced by the intensity of contactsperforming the gesture (e.g., the device detects a long press morequickly when the intensity of the contact is above an intensitythreshold or delays detection of a tap input when the intensity of thecontact is higher), the detection of those gestures does not requirethat the contacts reach a particular intensity threshold so long as thecriteria for recognizing the gesture can be met in circumstances wherethe contact does not reach the particular intensity threshold (e.g.,even if the amount of time that it takes to recognize the gesturechanges).

Contact intensity thresholds, duration thresholds, and movementthresholds are, in some circumstances, combined in a variety ofdifferent combinations in order to create heuristics for distinguishingtwo or more different gestures directed to the same input element orregion so that multiple different interactions with the same inputelement are enabled to provide a richer set of user interactions andresponses. The statement that a particular set of gesture recognitioncriteria do not require that the intensity of the contact(s) meet arespective intensity threshold in order for the particular gesturerecognition criteria to be met does not preclude the concurrentevaluation of other intensity-dependent gesture recognition criteria toidentify other gestures that do have a criteria that is met when agesture includes a contact with an intensity above the respectiveintensity threshold. For example, in some circumstances, first gesturerecognition criteria for a first gesture—which do not require that theintensity of the contact(s) meet a respective intensity threshold inorder for the first gesture recognition criteria to be met—are incompetition with second gesture recognition criteria for a secondgesture—which are dependent on the contact(s) reaching the respectiveintensity threshold. In such competitions, the gesture is, optionally,not recognized as meeting the first gesture recognition criteria for thefirst gesture if the second gesture recognition criteria for the secondgesture are met first. For example, if a contact reaches the respectiveintensity threshold before the contact moves by a predefined amount ofmovement, a deep press gesture is detected rather than a swipe gesture.Conversely, if the contact moves by the predefined amount of movementbefore the contact reaches the respective intensity threshold, a swipegesture is detected rather than a deep press gesture. Even in suchcircumstances, the first gesture recognition criteria for the firstgesture still do not require that the intensity of the contact(s) meet arespective intensity threshold in order for the first gesturerecognition criteria to be met because if the contact stayed below therespective intensity threshold until an end of the gesture (e.g., aswipe gesture with a contact that does not increase to an intensityabove the respective intensity threshold), the gesture would have beenrecognized by the first gesture recognition criteria as a swipe gesture.As such, particular gesture recognition criteria that do not requirethat the intensity of the contact(s) meet a respective intensitythreshold in order for the particular gesture recognition criteria to bemet will (A) in some circumstances ignore the intensity of the contactwith respect to the intensity threshold (e.g. for a tap gesture) and/or(B) in some circumstances still be dependent on the intensity of thecontact with respect to the intensity threshold in the sense that theparticular gesture recognition criteria (e.g., for a long press gesture)will fail if a competing set of intensity-dependent gesture recognitioncriteria (e.g., for a deep press gesture) recognize an input ascorresponding to an intensity-dependent gesture before the particulargesture recognition criteria recognize a gesture corresponding to theinput (e.g., for a long press gesture that is competing with a deeppress gesture for recognition).

Position module 131, in conjunction with accelerometers 167, gyroscopes168, and/or magnetometers 169, optionally detects positional informationconcerning the device, such as the device's attitude (roll, pitch,and/or yaw) in a particular frame of reference. Position module 130includes software components for performing various operations relatedto detecting the position of the device and detecting changes to theposition of the device. In some embodiments, position module 131 usesinformation received from a stylus being used with the device to detectpositional information concerning the stylus, such as detecting thepositional state of the stylus relative to the device and detectingchanges to the positional state of the stylus.

Graphics module 132 includes various known software components forrendering and displaying graphics on touch-sensitive display system 112or other display, including components for changing the visual impact(e.g., brightness, transparency, saturation, contrast or other visualproperty) of graphics that are displayed. As used herein, the term“graphics” includes any object that can be displayed to a user,including without limitation text, web pages, icons (such asuser-interface objects including soft keys), digital images, videos,animations and the like.

In some embodiments, graphics module 132 stores data representinggraphics to be used. Each graphic is, optionally, assigned acorresponding code. Graphics module 132 receives, from applicationsetc., one or more codes specifying graphics to be displayed along with,if necessary, coordinate data and other graphic property data, and thengenerates screen image data to output to display controller 156.

Haptic feedback module 133 includes various software components forgenerating instructions used by tactile output generator(s) 163 toproduce tactile outputs at one or more locations on device 100 inresponse to user interactions with device 100.

Text input module 134, which is, optionally, a component of graphicsmodule 132, provides soft keyboards for entering text in variousapplications (e.g., contacts 137, e-mail 140, IM 141, browser 147, andany other application that needs text input).

GPS module 135 determines the location of the device and provides thisinformation for use in various applications (e.g., to telephone 138 foruse in location-based dialing, to camera 143 as picture/video metadata,and to applications that provide location-based services such as weatherwidgets, local yellow page widgets, and map/navigation widgets).

Applications 136 optionally include the following modules (or sets ofinstructions), or a subset or superset thereof:

-   -   contacts module 137 (sometimes called an address book or contact        list);    -   telephone module 138;    -   video conferencing module 139;    -   e-mail client module 140;    -   instant messaging (IM) module 141;    -   reminders module 142;    -   camera module 143 for still and/or video images;    -   image management module 144;    -   browser module 147;    -   calendar module 148;    -   widget modules 149, which optionally include one or more of:        weather widget 149-1, stocks widget 149-2, calculator widget        149-3, alarm clock widget 149-4, dictionary widget 149-5, and        other widgets obtained by the user, as well as user-created        widgets 149-6;    -   widget creator module 150 for making user-created widgets 149-6;    -   search module 151;    -   video and music player module 152, which is, optionally, made up        of a video player module and a music player module;    -   notes module 153;    -   map module 154; and/or    -   online video module 155.

Examples of other applications 136 that are, optionally, stored inmemory 102 include other word processing applications, other imageediting applications, drawing applications, presentation applications,JAVA-enabled applications, encryption, digital rights management, voicerecognition, voice replication, meeting information, location sharing,document reader (e.g., book reader), and/or accessory control (e.g.,home accessory control).

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, and text inputmodule 134, contacts module 137 includes executable instructions tomanage an address book or contact list (e.g., stored in applicationinternal state 192 of contacts module 137 in memory 102 or memory 370),including: adding name(s) to the address book; deleting name(s) from theaddress book; associating telephone number(s), e-mail address(es),physical address(es) or other information with a name; associating animage with a name; categorizing and sorting names; providing telephonenumbers and/or e-mail addresses to initiate and/or facilitatecommunications by telephone 138, video conference 139, e-mail 140, or IM141; and so forth.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch-sensitive display system 112, display controller156, contact module 130, graphics module 132, and text input module 134,telephone module 138 includes executable instructions to enter asequence of characters corresponding to a telephone number, access oneor more telephone numbers in address book 137, modify a telephone numberthat has been entered, dial a respective telephone number, conduct aconversation and disconnect or hang up when the conversation iscompleted. As noted above, the wireless communication optionally usesany of a plurality of communications standards, protocols andtechnologies.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch-sensitive display system 112, display controller156, optical sensor(s) 164, optical sensor controller 158, contactmodule 130, graphics module 132, text input module 134, contact list137, and telephone module 138, videoconferencing module 139 includesexecutable instructions to initiate, conduct, and terminate a videoconference between a user and one or more other participants inaccordance with user instructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,and text input module 134, e-mail client module 140 includes executableinstructions to create, send, receive, and manage e-mail in response touser instructions. In conjunction with image management module 144,e-mail client module 140 makes it very easy to create and send e-mailswith still or video images taken with camera module 143.

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,and text input module 134, the instant messaging module 141 includesexecutable instructions to enter a sequence of characters correspondingto an instant message, to modify previously entered characters, totransmit a respective instant message (for example, using a ShortMessage Service (SMS) or Multimedia Message Service (MMS) protocol fortelephony-based instant messages or using XMPP, SIMPLE, Apple PushNotification Service (APNs) or IMPS for Internet-based instantmessages), to receive instant messages and to view received instantmessages. In some embodiments, transmitted and/or received instantmessages optionally include graphics, photos, audio files, video filesand/or other attachments as are supported in a MMS and/or an EnhancedMessaging Service (EMS). As used herein, “instant messaging” refers toboth telephony-based messages (e.g., messages sent using SMS or MMS) andInternet-based messages (e.g., messages sent using XMPP, SIMPLE, APNs,or IMPS).

In conjunction with RF circuitry 108, touch-sensitive display system112, display controller 156, contact module 130, graphics module 132,text input module 134, and GPS module 135, reminders module 142 includesexecutable instructions to set reminders.

In conjunction with touch-sensitive display system 112, displaycontroller 156, optical sensor(s) 164, optical sensor controller 158,contact module 130, graphics module 132, and image management module144, camera module 143 includes executable instructions to capture stillimages or video (including a video stream) and store them into memory102, modify characteristics of a still image or video, and/or delete astill image or video from memory 102.

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, text inputmodule 134, and camera module 143, image management module 144 includesexecutable instructions to arrange, modify (e.g., edit), or otherwisemanipulate, label, delete, present (e.g., in a digital slide show oralbum), and store still and/or video images.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, and text input module 134, browser module 147 includes executableinstructions to browse the Internet in accordance with userinstructions, including searching, linking to, receiving, and displayingweb pages or portions thereof, as well as attachments and other fileslinked to web pages.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, e-mail client module 140, and browser module147, calendar module 148 includes executable instructions to create,display, modify, and store calendars and data associated with calendars(e.g., calendar entries, to do lists, etc.) in accordance with userinstructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, and browser module 147, widget modules 149are mini-applications that are, optionally, downloaded and used by auser (e.g., weather widget 149-1, stocks widget 149-2, calculator widget149-3, alarm clock widget 149-4, and dictionary widget 149-5) or createdby the user (e.g., user-created widget 149-6). In some embodiments, awidget includes an HTML (Hypertext Markup Language) file, a CSS(Cascading Style Sheets) file, and a JavaScript file. In someembodiments, a widget includes an XML (Extensible Markup Language) fileand a JavaScript file (e.g., Yahoo! Widgets).

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, and browser module 147, the widget creatormodule 150 includes executable instructions to create widgets (e.g.,turning a user-specified portion of a web page into a widget).

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, and text inputmodule 134, search module 151 includes executable instructions to searchfor text, music, sound, image, video, and/or other files in memory 102that match one or more search criteria (e.g., one or more user-specifiedsearch terms) in accordance with user instructions.

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, audio circuitry110, speaker 111, RF circuitry 108, and browser module 147, video andmusic player module 152 includes executable instructions that allow theuser to download and play back recorded music and other sound filesstored in one or more file formats, such as MP3 or AAC files, andexecutable instructions to display, present or otherwise play backvideos (e.g., on touch-sensitive display system 112, or on an externaldisplay connected wirelessly or via external port 124). In someembodiments, device 100 optionally includes the functionality of an MP3player, such as an iPod (trademark of Apple Inc.).

In conjunction with touch-sensitive display system 112, displaycontroller 156, contact module 130, graphics module 132, and text inputmodule 134, notes module 153 includes executable instructions to createand manage notes, to do lists, and the like in accordance with userinstructions.

In conjunction with RF circuitry 108, touch-sensitive display system112, display system controller 156, contact module 130, graphics module132, text input module 134, GPS module 135, and browser module 147, mapmodule 154 includes executable instructions to receive, display, modify,and store maps and data associated with maps (e.g., driving directions;data on stores and other points of interest at or near a particularlocation; and other location-based data) in accordance with userinstructions.

In conjunction with touch-sensitive display system 112, display systemcontroller 156, contact module 130, graphics module 132, audio circuitry110, speaker 111, RF circuitry 108, text input module 134, e-mail clientmodule 140, and browser module 147, online video module 155 includesexecutable instructions that allow the user to access, browse, receive(e.g., by streaming and/or download), play back (e.g., on the touchscreen 112, or on an external display connected wirelessly or viaexternal port 124), send an e-mail with a link to a particular onlinevideo, and otherwise manage online videos in one or more file formats,such as H.264. In some embodiments, instant messaging module 141, ratherthan e-mail client module 140, is used to send a link to a particularonline video.

Each of the above identified modules and applications correspond to aset of executable instructions for performing one or more functionsdescribed above and the methods described in this application (e.g., thecomputer-implemented methods and other information processing methodsdescribed herein). These modules (i.e., sets of instructions) need notbe implemented as separate software programs, procedures or modules, andthus various subsets of these modules are, optionally, combined orotherwise re-arranged in various embodiments. In some embodiments,memory 102 optionally stores a subset of the modules and data structuresidentified above. Furthermore, memory 102 optionally stores additionalmodules and data structures not described above.

In some embodiments, device 100 is a device where operation of apredefined set of functions on the device is performed exclusivelythrough a touch screen and/or a touchpad. By using a touch screen and/ora touchpad as the primary input control device for operation of device100, the number of physical input control devices (such as push buttons,dials, and the like) on device 100 is, optionally, reduced.

The predefined set of functions that are performed exclusively through atouch screen and/or a touchpad optionally include navigation betweenuser interfaces. In some embodiments, the touchpad, when touched by theuser, navigates device 100 to a main, home, or root menu from any userinterface that is displayed on device 100. In such embodiments, a “menubutton” is implemented using a touchpad. In some other embodiments, themenu button is a physical push button or other physical input controldevice instead of a touchpad.

FIG. 1B is a block diagram illustrating example components for eventhandling in accordance with some embodiments. In some embodiments,memory 102 (in FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g.,in operating system 126) and a respective application 136-1 (e.g., anyof the aforementioned applications 136, 137-155, 380-390).

Event sorter 170 receives event information and determines theapplication 136-1 and application view 191 of application 136-1 to whichto deliver the event information. Event sorter 170 includes eventmonitor 171 and event dispatcher module 174. In some embodiments,application 136-1 includes application internal state 192, whichindicates the current application view(s) displayed on touch-sensitivedisplay system 112 when the application is active or executing. In someembodiments, device/global internal state 157 is used by event sorter170 to determine which application(s) is (are) currently active, andapplication internal state 192 is used by event sorter 170 to determineapplication views 191 to which to deliver event information.

In some embodiments, application internal state 192 includes additionalinformation, such as one or more of: resume information to be used whenapplication 136-1 resumes execution, user interface state informationthat indicates information being displayed or that is ready for displayby application 136-1, a state queue for enabling the user to go back toa prior state or view of application 136-1, and a redo/undo queue ofprevious actions taken by the user.

Event monitor 171 receives event information from peripherals interface118. Event information includes information about a sub-event (e.g., auser touch on touch-sensitive display system 112, as part of amulti-touch gesture). Peripherals interface 118 transmits information itreceives from I/O subsystem 106 or a sensor, such as proximity sensor166, accelerometer(s) 167, gyroscope(s) 168, magnetometer(s) 169, and/ormicrophone 113 (through audio circuitry 110). Information thatperipherals interface 118 receives from I/O subsystem 106 includesinformation from touch-sensitive display system 112 or a touch-sensitivesurface.

In some embodiments, event monitor 171 sends requests to the peripheralsinterface 118 at predetermined intervals. In response, peripheralsinterface 118 transmits event information. In other embodiments,peripheral interface 118 transmits event information only when there isa significant event (e.g., receiving an input above a predeterminednoise threshold and/or for more than a predetermined duration).

In some embodiments, event sorter 170 also includes a hit viewdetermination module 172 and/or an active event recognizer determinationmodule 173.

Hit view determination module 172 provides software procedures fordetermining where a sub-event has taken place within one or more views,when touch-sensitive display system 112 displays more than one view.Views are made up of controls and other elements that a user can see onthe display.

Another aspect of the user interface associated with an application is aset of views, sometimes herein called application views or userinterface windows, in which information is displayed and touch-basedgestures occur. The application views (of a respective application) inwhich a touch is detected optionally correspond to programmatic levelswithin a programmatic or view hierarchy of the application. For example,the lowest level view in which a touch is detected is, optionally,called the hit view, and the set of events that are recognized as properinputs are, optionally, determined based, at least in part, on the hitview of the initial touch that begins a touch-based gesture.

Hit view determination module 172 receives information related tosub-events of a touch-based gesture. When an application has multipleviews organized in a hierarchy, hit view determination module 172identifies a hit view as the lowest view in the hierarchy which shouldhandle the sub-event. In most circumstances, the hit view is the lowestlevel view in which an initiating sub-event occurs (i.e., the firstsub-event in the sequence of sub-events that form an event or potentialevent). Once the hit view is identified by the hit view determinationmodule, the hit view typically receives all sub-events related to thesame touch or input source for which it was identified as the hit view.

Active event recognizer determination module 173 determines which viewor views within a view hierarchy should receive a particular sequence ofsub-events. In some embodiments, active event recognizer determinationmodule 173 determines that only the hit view should receive a particularsequence of sub-events. In other embodiments, active event recognizerdetermination module 173 determines that all views that include thephysical location of a sub-event are actively involved views, andtherefore determines that all actively involved views should receive aparticular sequence of sub-events. In other embodiments, even if touchsub-events were entirely confined to the area associated with oneparticular view, views higher in the hierarchy would still remain asactively involved views.

Event dispatcher module 174 dispatches the event information to an eventrecognizer (e.g., event recognizer 180). In embodiments including activeevent recognizer determination module 173, event dispatcher module 174delivers the event information to an event recognizer determined byactive event recognizer determination module 173. In some embodiments,event dispatcher module 174 stores in an event queue the eventinformation, which is retrieved by a respective event receiver module182.

In some embodiments, operating system 126 includes event sorter 170.Alternatively, application 136-1 includes event sorter 170. In yet otherembodiments, event sorter 170 is a stand-alone module, or a part ofanother module stored in memory 102, such as contact/motion module 130.

In some embodiments, application 136-1 includes a plurality of eventhandlers 190 and one or more application views 191, each of whichincludes instructions for handling touch events that occur within arespective view of the application's user interface. Each applicationview 191 of the application 136-1 includes one or more event recognizers180. Typically, a respective application view 191 includes a pluralityof event recognizers 180. In other embodiments, one or more of eventrecognizers 180 are part of a separate module, such as a user interfacekit (not shown) or a higher level object from which application 136-1inherits methods and other properties. In some embodiments, a respectiveevent handler 190 includes one or more of: data updater 176, objectupdater 177, GUI updater 178, and/or event data 179 received from eventsorter 170. Event handler 190 optionally utilizes or calls data updater176, object updater 177 or GUI updater 178 to update the applicationinternal state 192. Alternatively, one or more of the application views191 includes one or more respective event handlers 190. Also, in someembodiments, one or more of data updater 176, object updater 177, andGUI updater 178 are included in a respective application view 191.

A respective event recognizer 180 receives event information (e.g.,event data 179) from event sorter 170, and identifies an event from theevent information. Event recognizer 180 includes event receiver 182 andevent comparator 184. In some embodiments, event recognizer 180 alsoincludes at least a subset of: metadata 183, and event deliveryinstructions 188 (which optionally include sub-event deliveryinstructions).

Event receiver 182 receives event information from event sorter 170. Theevent information includes information about a sub-event, for example, atouch or a touch movement. Depending on the sub-event, the eventinformation also includes additional information, such as location ofthe sub-event. When the sub-event concerns motion of a touch, the eventinformation optionally also includes speed and direction of thesub-event. In some embodiments, events include rotation of the devicefrom one orientation to another (e.g., from a portrait orientation to alandscape orientation, or vice versa), and the event informationincludes corresponding information about the current orientation (alsocalled device attitude) of the device.

Event comparator 184 compares the event information to predefined eventor sub-event definitions and, based on the comparison, determines anevent or sub-event, or determines or updates the state of an event orsub-event. In some embodiments, event comparator 184 includes eventdefinitions 186. Event definitions 186 contain definitions of events(e.g., predefined sequences of sub-events), for example, event 1(187-1), event 2 (187-2), and others. In some embodiments, sub-events inan event 187 include, for example, touch begin, touch end, touchmovement, touch cancellation, and multiple touching. In one example, thedefinition for event 1 (187-1) is a double tap on a displayed object.The double tap, for example, comprises a first touch (touch begin) onthe displayed object for a predetermined phase, a first lift-off (touchend) for a predetermined phase, a second touch (touch begin) on thedisplayed object for a predetermined phase, and a second lift-off (touchend) for a predetermined phase. In another example, the definition forevent 2 (187-2) is a dragging on a displayed object. The dragging, forexample, comprises a touch (or contact) on the displayed object for apredetermined phase, a movement of the touch across touch-sensitivedisplay system 112, and lift-off of the touch (touch end). In someembodiments, the event also includes information for one or moreassociated event handlers 190.

In some embodiments, event definition 187 includes a definition of anevent for a respective user-interface object. In some embodiments, eventcomparator 184 performs a hit test to determine which user-interfaceobject is associated with a sub-event. For example, in an applicationview in which three user-interface objects are displayed ontouch-sensitive display system 112, when a touch is detected ontouch-sensitive display system 112, event comparator 184 performs a hittest to determine which of the three user-interface objects isassociated with the touch (sub-event). If each displayed object isassociated with a respective event handler 190, the event comparatoruses the result of the hit test to determine which event handler 190should be activated. For example, event comparator 184 selects an eventhandler associated with the sub-event and the object triggering the hittest.

In some embodiments, the definition for a respective event 187 alsoincludes delayed actions that delay delivery of the event informationuntil after it has been determined whether the sequence of sub-eventsdoes or does not correspond to the event recognizer's event type.

When a respective event recognizer 180 determines that the series ofsub-events do not match any of the events in event definitions 186, therespective event recognizer 180 enters an event impossible, eventfailed, or event ended state, after which it disregards subsequentsub-events of the touch-based gesture. In this situation, other eventrecognizers, if any, that remain active for the hit view continue totrack and process sub-events of an ongoing touch-based gesture.

In some embodiments, a respective event recognizer 180 includes metadata183 with configurable properties, flags, and/or lists that indicate howthe event delivery system should perform sub-event delivery to activelyinvolved event recognizers. In some embodiments, metadata 183 includesconfigurable properties, flags, and/or lists that indicate how eventrecognizers interact, or are enabled to interact, with one another. Insome embodiments, metadata 183 includes configurable properties, flags,and/or lists that indicate whether sub-events are delivered to varyinglevels in the view or programmatic hierarchy.

In some embodiments, a respective event recognizer 180 activates eventhandler 190 associated with an event when one or more particularsub-events of an event are recognized. In some embodiments, a respectiveevent recognizer 180 delivers event information associated with theevent to event handler 190. Activating an event handler 190 is distinctfrom sending (and deferred sending) sub-events to a respective hit view.In some embodiments, event recognizer 180 throws a flag associated withthe recognized event, and event handler 190 associated with the flagcatches the flag and performs a predefined process.

In some embodiments, event delivery instructions 188 include sub-eventdelivery instructions that deliver event information about a sub-eventwithout activating an event handler. Instead, the sub-event deliveryinstructions deliver event information to event handlers associated withthe series of sub-events or to actively involved views. Event handlersassociated with the series of sub-events or with actively involved viewsreceive the event information and perform a predetermined process.

In some embodiments, data updater 176 creates and updates data used inapplication 136-1. For example, data updater 176 updates the telephonenumber used in contacts module 137, or stores a video file used in videoplayer module 145. In some embodiments, object updater 177 creates andupdates objects used in application 136-1. For example, object updater177 creates a new user-interface object or updates the position of auser-interface object. GUI updater 178 updates the GUI. For example, GUIupdater 178 prepares display information and sends it to graphics module132 for display on a touch-sensitive display.

In some embodiments, event handler(s) 190 includes or has access to dataupdater 176, object updater 177, and GUI updater 178. In someembodiments, data updater 176, object updater 177, and GUI updater 178are included in a single module of a respective application 136-1 orapplication view 191. In other embodiments, they are included in two ormore software modules.

It shall be understood that the foregoing discussion regarding eventhandling of user touches on touch-sensitive displays also applies toother forms of user inputs to operate multifunction devices 100 withinput-devices, not all of which are initiated on touch screens. Forexample, mouse movement and mouse button presses, optionally coordinatedwith single or multiple keyboard presses or holds; contact movementssuch as taps, drags, scrolls, etc., on touch-pads; pen stylus inputs;movement of the device; oral instructions; detected eye movements;biometric inputs; and/or any combination thereof are optionally utilizedas inputs corresponding to sub-events which define an event to berecognized.

FIG. 2 illustrates a portable multifunction device 100 having a touchscreen (e.g., touch-sensitive display system 112, FIG. 1A) in accordancewith some embodiments. The touch screen optionally displays one or moregraphics within user interface (UI) 200. In this embodiment, as well asothers described below, a user is enabled to select one or more of thegraphics by making a gesture on the graphics, for example, with one ormore fingers 202 (not drawn to scale in the figure) or one or morestyluses 203 (not drawn to scale in the figure). In some embodiments,selection of one or more graphics occurs when the user breaks contactwith the one or more graphics. In some embodiments, the gestureoptionally includes one or more taps, one or more swipes (from left toright, right to left, upward and/or downward) and/or a rolling of afinger (from right to left, left to right, upward and/or downward) thathas made contact with device 100. In some implementations orcircumstances, inadvertent contact with a graphic does not select thegraphic. For example, a swipe gesture that sweeps over an applicationicon optionally does not select the corresponding application when thegesture corresponding to selection is a tap.

Device 100 optionally also includes one or more physical buttons, suchas “home” or menu button 204. As described previously, menu button 204is, optionally, used to navigate to any application 136 in a set ofapplications that are, optionally executed on device 100. Alternatively,in some embodiments, the menu button is implemented as a soft key in aGUI displayed on the touch-screen display.

In some embodiments, device 100 includes the touch-screen display, menubutton 204, push button 206 for powering the device on/off and lockingthe device, volume adjustment button(s) 208, Subscriber Identity Module(SIM) card slot 210, head set jack 212, and docking/charging externalport 124. Push button 206 is, optionally, used to turn the power on/offon the device by depressing the button and holding the button in thedepressed state for a predefined time interval; to lock the device bydepressing the button and releasing the button before the predefinedtime interval has elapsed; and/or to unlock the device or initiate anunlock process. In some embodiments, device 100 also accepts verbalinput for activation or deactivation of some functions throughmicrophone 113. Device 100 also, optionally, includes one or morecontact intensity sensors 165 for detecting intensity of contacts ontouch-sensitive display system 112 and/or one or more tactile outputgenerators 163 for generating tactile outputs for a user of device 100.

FIG. 3 is a block diagram of an example multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments. Device 300 need not be portable. In some embodiments,device 300 is a laptop computer, a desktop computer, a tablet computer,a multimedia player device, a navigation device, an educational device(such as a child's learning toy), a gaming system, or a control device(e.g., a home or industrial controller). Device 300 typically includesone or more processing units (CPU's) 310, one or more network or othercommunications interfaces 360, memory 370, and one or more communicationbuses 320 for interconnecting these components. Communication buses 320optionally include circuitry (sometimes called a chipset) thatinterconnects and controls communications between system components.Device 300 includes input/output (I/O) interface 330 comprising display340, which is typically a touch-screen display. I/O interface 330 alsooptionally includes a keyboard and/or mouse (or other pointing device)350 and touchpad 355, tactile output generator 357 for generatingtactile outputs on device 300 (e.g., similar to tactile outputgenerator(s) 163 described above with reference to FIG. 1A), sensors 359(e.g., touch-sensitive, optical, contact intensity, proximity,acceleration, attitude, and/or magnetic sensors similar to sensors 112,164, 165, 166, 167, 168, and 169 described above with reference to FIG.1A). Memory 370 includes high-speed random access memory, such as DRAM,SRAM, DDR RAM or other random access solid state memory devices; andoptionally includes non-volatile memory, such as one or more magneticdisk storage devices, optical disk storage devices, flash memorydevices, or other non-volatile solid state storage devices. Memory 370optionally includes one or more storage devices remotely located fromCPU(s) 310. In some embodiments, memory 370 stores programs, modules,and data structures analogous to the programs, modules, and datastructures stored in memory 102 of portable multifunction device 100(FIG. 1A), or a subset thereof. Furthermore, memory 370 optionallystores additional programs, modules, and data structures not present inmemory 102 of portable multifunction device 100. For example, memory 370of device 300 optionally stores drawing module 380, presentation module382, word processing module 384, website creation module 386, diskauthoring module 388, and/or spreadsheet module 390, while memory 102 ofportable multifunction device 100 (FIG. 1A) optionally does not storethese modules.

Each of the above identified elements in FIG. 3 are, optionally, storedin one or more of the previously mentioned memory devices. Each of theabove identified modules corresponds to a set of instructions forperforming a function described above. The above identified modules orprograms (i.e., sets of instructions) need not be implemented asseparate software programs, procedures or modules, and thus varioussubsets of these modules are, optionally, combined or otherwisere-arranged in various embodiments. In some embodiments, memory 370optionally stores a subset of the modules and data structures identifiedabove. Furthermore, memory 370 optionally stores additional modules anddata structures not described above.

Attention is now directed towards embodiments of user interfaces (“UI”)that are, optionally, implemented on portable multifunction device 100.

FIG. 4A illustrates an example user interface for a menu of applicationson portable multifunction device 100 in accordance with someembodiments. Similar user interfaces are, optionally, implemented ondevice 300. In some embodiments, user interface 400 includes thefollowing elements, or a subset or superset thereof:

-   -   Signal strength indicator(s) 402 for wireless communication(s),        such as cellular and Wi-Fi signals;    -   Time 404;    -   Bluetooth indicator 405;    -   Battery status indicator 406;    -   Tray 408 with icons for frequently used applications, such as:        -   Icon 416 for telephone module 138, labeled “Phone,” which            optionally includes an indicator 414 of the number of missed            calls or voicemail messages;        -   Icon 418 for e-mail client module 140, labeled “Mail,” which            optionally includes an indicator 410 of the number of unread            e-mails;        -   Icon 420 for browser module 147, labeled “Browser;” and        -   Icon 422 for video and music player module 152, also            referred to as iPod (trademark of Apple Inc.) module 152,            labeled “iPod;” and    -   Icons for other applications, such as:        -   Icon 424 for IM module 141, labeled “Messages;”        -   Icon 426 for calendar module 148, labeled “Calendar;”        -   Icon 428 for image management module 144, labeled “Photos;”        -   Icon 430 for camera module 143, labeled “Camera;”        -   Icon 432 for online video module 155, labeled “Online            Video;”        -   Icon 434 for stocks widget 149-2, labeled “Stocks;”        -   Icon 436 for map module 154, labeled “Map;”        -   Icon 438 for weather widget 149-1, labeled “Weather;”        -   Icon 440 for alarm clock widget 149-4, labeled “Clock;”        -   Icon 442 for reminders module 142, labeled “Reminders;”        -   Icon 444 for notes module 153, labeled “Notes;” and        -   Icon 446 for a settings application or module, which            provides access to settings for device 100 and its various            applications 136.

It should be noted that the icon labels illustrated in FIG. 4A aremerely example. For example, in some embodiments, icon 422 for video andmusic player module 152 is labeled “Music” or “Music Player.” Otherlabels are, optionally, used for various application icons. In someembodiments, a label for a respective application icon includes a nameof an application corresponding to the respective application icon. Insome embodiments, a label for a particular application icon is distinctfrom a name of an application corresponding to the particularapplication icon.

FIG. 4B illustrates an example user interface on a device (e.g., device300, FIG. 3) with a touch-sensitive surface 451 (e.g., a tablet ortouchpad 355, FIG. 3) that is separate from the display 450. Device 300also, optionally, includes one or more contact intensity sensors (e.g.,one or more of sensors 359) for detecting intensity of contacts ontouch-sensitive surface 451 and/or one or more tactile output generators359 for generating tactile outputs for a user of device 300.

FIG. 4B illustrates an example user interface on a device (e.g., device300, FIG. 3) with a touch-sensitive surface 451 (e.g., a tablet ortouchpad 355, FIG. 3) that is separate from the display 450. Althoughmany of the examples that follow will be given with reference to inputson touch screen display 112 (where the touch sensitive surface and thedisplay are combined), in some embodiments, the device detects inputs ona touch-sensitive surface that is separate from the display, as shown inFIG. 4B. In some embodiments, the touch-sensitive surface (e.g., 451 inFIG. 4B) has a primary axis (e.g., 452 in FIG. 4B) that corresponds to aprimary axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). Inaccordance with these embodiments, the device detects contacts (e.g.,460 and 462 in FIG. 4B) with the touch-sensitive surface 451 atlocations that correspond to respective locations on the display (e.g.,in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470). In thisway, user inputs (e.g., contacts 460 and 462, and movements thereof)detected by the device on the touch-sensitive surface (e.g., 451 in FIG.4B) are used by the device to manipulate the user interface on thedisplay (e.g., 450 in FIG. 4B) of the multifunction device when thetouch-sensitive surface is separate from the display. It should beunderstood that similar methods are, optionally, used for other userinterfaces described herein.

Additionally, while the following examples are given primarily withreference to finger inputs (e.g., finger contacts, finger tap gestures,finger swipe gestures, etc.), it should be understood that, in someembodiments, one or more of the finger inputs are replaced with inputfrom another input device (e.g., a mouse based input or a stylus input).For example, a swipe gesture is, optionally, replaced with a mouse click(e.g., instead of a contact) followed by movement of the cursor alongthe path of the swipe (e.g., instead of movement of the contact). Asanother example, a tap gesture is, optionally, replaced with a mouseclick while the cursor is located over the location of the tap gesture(e.g., instead of detection of the contact followed by ceasing to detectthe contact). Similarly, when multiple user inputs are simultaneouslydetected, it should be understood that multiple computer mice are,optionally, used simultaneously, or a mouse and finger contacts are,optionally, used simultaneously.

As used herein, the term “focus selector” is an input element thatindicates a current part of a user interface with which a user isinteracting. In some implementations that include a cursor or otherlocation marker, the cursor acts as a “focus selector,” so that when aninput (e.g., a press input) is detected on a touch-sensitive surface(e.g., touchpad 355 in FIG. 3 or touch-sensitive surface 451 in FIG. 4B)while the cursor is over a particular user interface element (e.g., abutton, window, slider or other user interface element), the particularuser interface element is adjusted in accordance with the detectedinput. In some implementations that include a touch-screen display(e.g., touch-sensitive display system 112 in FIG. 1A or the touch screenin FIG. 4A) that enables direct interaction with user interface elementson the touch-screen display, a detected contact on the touch-screen actsas a “focus selector,” so that when an input (e.g., a press input by thecontact) is detected on the touch-screen display at a location of aparticular user interface element (e.g., a button, window, slider orother user interface element), the particular user interface element isadjusted in accordance with the detected input. In some implementations,focus is moved from one region of a user interface to another region ofthe user interface without corresponding movement of a cursor ormovement of a contact on a touch-screen display (e.g., by using a tabkey or arrow keys to move focus from one button to another button); inthese implementations, the focus selector moves in accordance withmovement of focus between different regions of the user interface.Without regard to the specific form taken by the focus selector, thefocus selector is generally the user interface element (or contact on atouch-screen display) that is controlled by the user so as tocommunicate the user's intended interaction with the user interface(e.g., by indicating, to the device, the element of the user interfacewith which the user is intending to interact). For example, the locationof a focus selector (e.g., a cursor, a contact, or a selection box) overa respective button while a press input is detected on thetouch-sensitive surface (e.g., a touchpad or touch screen) will indicatethat the user is intending to activate the respective button (as opposedto other user interface elements shown on a display of the device).

As used in the specification and claims, the term “intensity” of acontact on a touch-sensitive surface refers to the force or pressure(force per unit area) of a contact (e.g., a finger contact or a styluscontact) on the touch-sensitive surface, or to a substitute (proxy) forthe force or pressure of a contact on the touch-sensitive surface. Theintensity of a contact has a range of values that includes at least fourdistinct values and more typically includes hundreds of distinct values(e.g., at least 256). Intensity of a contact is, optionally, determined(or measured) using various approaches and various sensors orcombinations of sensors. For example, one or more force sensorsunderneath or adjacent to the touch-sensitive surface are, optionally,used to measure force at various points on the touch-sensitive surface.In some implementations, force measurements from multiple force sensorsare combined (e.g., a weighted average or a sum) to determine anestimated force of a contact. Similarly, a pressure-sensitive tip of astylus is, optionally, used to determine a pressure of the stylus on thetouch-sensitive surface. Alternatively, the size of the contact areadetected on the touch-sensitive surface and/or changes thereto, thecapacitance of the touch-sensitive surface proximate to the contactand/or changes thereto, and/or the resistance of the touch-sensitivesurface proximate to the contact and/or changes thereto are, optionally,used as a substitute for the force or pressure of the contact on thetouch-sensitive surface. In some implementations, the substitutemeasurements for contact force or pressure are used directly todetermine whether an intensity threshold has been exceeded (e.g., theintensity threshold is described in units corresponding to thesubstitute measurements). In some implementations, the substitutemeasurements for contact force or pressure are converted to an estimatedforce or pressure and the estimated force or pressure is used todetermine whether an intensity threshold has been exceeded (e.g., theintensity threshold is a pressure threshold measured in units ofpressure). Using the intensity of a contact as an attribute of a userinput allows for user access to additional device functionality that mayotherwise not be readily accessible by the user on a reduced-size devicewith limited real estate for displaying affordances (e.g., on atouch-sensitive display) and/or receiving user input (e.g., via atouch-sensitive display, a touch-sensitive surface, or aphysical/mechanical control such as a knob or a button).

In some embodiments, contact/motion module 130 and/or 430 uses a set ofone or more intensity thresholds to determine whether an operation hasbeen performed by a user (e.g., to determine whether a user has“clicked” on an icon). In some embodiments, at least a subset of theintensity thresholds are determined in accordance with softwareparameters (e.g., the intensity thresholds are not determined by theactivation thresholds of particular physical actuators and can beadjusted without changing the physical hardware of device 100). Forexample, a mouse “click” threshold of a trackpad or touch-screen displaycan be set to any of a large range of predefined thresholds valueswithout changing the trackpad or touch-screen display hardware.Additionally, in some embodiments, a user of the device is provided withsoftware settings for adjusting one or more of the set of intensitythresholds (e.g., by adjusting individual intensity thresholds and/or byadjusting a plurality of intensity thresholds at once with asystem-level click “intensity” parameter).

As used in the specification and claims, the term “characteristicintensity” of a contact is a characteristic of the contact based on oneor more intensities of the contact. In some embodiments, thecharacteristic intensity is based on multiple intensity samples. Thecharacteristic intensity is, optionally, based on a predefined number ofintensity samples, or a set of intensity samples collected during apredetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10seconds) relative to a predefined event (e.g., after detecting thecontact, prior to detecting liftoff of the contact, before or afterdetecting a start of movement of the contact, prior to detecting an endof the contact, before or after detecting an increase in intensity ofthe contact, and/or before or after detecting a decrease in intensity ofthe contact). A characteristic intensity of a contact is, optionallybased on one or more of: a maximum value of the intensities of thecontact, a mean value of the intensities of the contact, an averagevalue of the intensities of the contact, a top 10 percentile value ofthe intensities of the contact, a value at the half maximum of theintensities of the contact, a value at the 90 percent maximum of theintensities of the contact, or the like. In some embodiments, theduration of the contact is used in determining the characteristicintensity (e.g., when the characteristic intensity is an average of theintensity of the contact over time). In some embodiments, thecharacteristic intensity is compared to a set of one or more intensitythresholds to determine whether an operation has been performed by auser. For example, the set of one or more intensity thresholds mayinclude a first intensity threshold and a second intensity threshold. Inthis example, a contact with a characteristic intensity that does notexceed the first threshold results in a first operation, a contact witha characteristic intensity that exceeds the first intensity thresholdand does not exceed the second intensity threshold results in a secondoperation, and a contact with a characteristic intensity that exceedsthe second intensity threshold results in a third operation. In someembodiments, a comparison between the characteristic intensity and oneor more intensity thresholds is used to determine whether or not toperform one or more operations (e.g., whether to perform a respectiveoption or forgo performing the respective operation) rather than beingused to determine whether to perform a first operation or a secondoperation.

In some embodiments, a portion of a gesture is identified for purposesof determining a characteristic intensity. For example, atouch-sensitive surface may receive a continuous swipe contacttransitioning from a start location and reaching an end location (e.g.,a drag gesture), at which point the intensity of the contact increases.In this example, the characteristic intensity of the contact at the endlocation may be based on only a portion of the continuous swipe contact,and not the entire swipe contact (e.g., only the portion of the swipecontact at the end location). In some embodiments, a smoothing algorithmmay be applied to the intensities of the swipe contact prior todetermining the characteristic intensity of the contact. For example,the smoothing algorithm optionally includes one or more of: anunweighted sliding-average smoothing algorithm, a triangular smoothingalgorithm, a median filter smoothing algorithm, and/or an exponentialsmoothing algorithm. In some circumstances, these smoothing algorithmseliminate narrow spikes or dips in the intensities of the swipe contactfor purposes of determining a characteristic intensity.

The user interface figures described herein optionally include variousintensity diagrams that show the current intensity of the contact on thetouch-sensitive surface relative to one or more intensity thresholds(e.g., a contact detection intensity threshold IT₀, a light pressintensity threshold IT_(L), a deep press intensity threshold IT_(D)(e.g., that is at least initially higher than I_(L)), and/or one or moreother intensity thresholds (e.g., an intensity threshold I_(H) that islower than I_(L))). This intensity diagram is typically not part of thedisplayed user interface, but is provided to aid in the interpretationof the figures. In some embodiments, the light press intensity thresholdcorresponds to an intensity at which the device will perform operationstypically associated with clicking a button of a physical mouse or atrackpad. In some embodiments, the deep press intensity thresholdcorresponds to an intensity at which the device will perform operationsthat are different from operations typically associated with clicking abutton of a physical mouse or a trackpad. In some embodiments, when acontact is detected with a characteristic intensity below the lightpress intensity threshold (e.g., and above a nominal contact-detectionintensity threshold IT₀ below which the contact is no longer detected),the device will move a focus selector in accordance with movement of thecontact on the touch-sensitive surface without performing an operationassociated with the light press intensity threshold or the deep pressintensity threshold. Generally, unless otherwise stated, these intensitythresholds are consistent between different sets of user interfacefigures.

In some embodiments, the response of the device to inputs detected bythe device depends on criteria based on the contact intensity during theinput. For example, for some “light press” inputs, the intensity of acontact exceeding a first intensity threshold during the input triggersa first response. In some embodiments, the response of the device toinputs detected by the device depends on criteria that include both thecontact intensity during the input and time-based criteria. For example,for some “deep press” inputs, the intensity of a contact exceeding asecond intensity threshold during the input, greater than the firstintensity threshold for a light press, triggers a second response onlyif a delay time has elapsed between meeting the first intensitythreshold and meeting the second intensity threshold. This delay time istypically less than 200 ms in duration (e.g., 40, 100, or 120 ms,depending on the magnitude of the second intensity threshold, with thedelay time increasing as the second intensity threshold increases). Thisdelay time helps to avoid accidental deep press inputs. As anotherexample, for some “deep press” inputs, there is a reduced-sensitivitytime period that occurs after the time at which the first intensitythreshold is met. During the reduced-sensitivity time period, the secondintensity threshold is increased. This temporary increase in the secondintensity threshold also helps to avoid accidental deep press inputs.For other deep press inputs, the response to detection of a deep pressinput does not depend on time-based criteria.

In some embodiments, one or more of the input intensity thresholdsand/or the corresponding outputs vary based on one or more factors, suchas user settings, contact motion, input timing, application running,rate at which the intensity is applied, number of concurrent inputs,user history, environmental factors (e.g., ambient noise), focusselector position, and the like. Example factors are described in U.S.patent application Ser. Nos. 14/399,606 and 14/624,296, which areincorporated by reference herein in their entireties.

For example, FIG. 4C illustrates a dynamic intensity threshold 480 thatchanges over time based in part on the intensity of touch input 476 overtime. Dynamic intensity threshold 480 is a sum of two components, firstcomponent 474 that decays over time after a predefined delay time p1from when touch input 476 is initially detected, and second component478 that trails the intensity of touch input 476 over time. The initialhigh intensity threshold of first component 474 reduces accidentaltriggering of a “deep press” response, while still allowing an immediate“deep press” response if touch input 476 provides sufficient intensity.Second component 478 reduces unintentional triggering of a “deep press”response by gradual intensity fluctuations of in a touch input. In someembodiments, when touch input 476 satisfies dynamic intensity threshold480 (e.g., at point 481 in FIG. 4C), the “deep press” response istriggered.

FIG. 4D illustrates another dynamic intensity threshold 486 (e.g.,intensity threshold I_(D)). FIG. 4D also illustrates two other intensitythresholds: a first intensity threshold I_(H) and a second intensitythreshold I_(L). In FIG. 4D, although touch input 484 satisfies thefirst intensity threshold I_(H) and the second intensity threshold I_(L)prior to time p2, no response is provided until delay time p2 haselapsed at time 482. Also in FIG. 4D, dynamic intensity threshold 486decays over time, with the decay starting at time 488 after a predefineddelay time p1 has elapsed from time 482 (when the response associatedwith the second intensity threshold I_(L) was triggered). This type ofdynamic intensity threshold reduces accidental triggering of a responseassociated with the dynamic intensity threshold I_(D) immediately after,or concurrently with, triggering a response associated with a lowerintensity threshold, such as the first intensity threshold I_(H) or thesecond intensity threshold I_(L).

FIG. 4E illustrate yet another dynamic intensity threshold 492 (e.g.,intensity threshold I_(D)). In FIG. 4E, a response associated with theintensity threshold I_(L) is triggered after the delay time p2 haselapsed from when touch input 490 is initially detected. Concurrently,dynamic intensity threshold 492 decays after the predefined delay timep1 has elapsed from when touch input 490 is initially detected. So adecrease in intensity of touch input 490 after triggering the responseassociated with the intensity threshold I_(L), followed by an increasein the intensity of touch input 490, without releasing touch input 490,can trigger a response associated with the intensity threshold I_(D)(e.g., at time 494) even when the intensity of touch input 490 is belowanother intensity threshold, for example, the intensity threshold I_(L).

An increase of characteristic intensity of the contact from an intensitybelow the light press intensity threshold IT_(L) to an intensity betweenthe light press intensity threshold IT_(L) and the deep press intensitythreshold IT_(D) is sometimes referred to as a “light press” input. Anincrease of characteristic intensity of the contact from an intensitybelow the deep press intensity threshold IT_(D) to an intensity abovethe deep press intensity threshold IT_(D) is sometimes referred to as a“deep press” input. An increase of characteristic intensity of thecontact from an intensity below the contact-detection intensitythreshold IT₀ to an intensity between the contact-detection intensitythreshold IT₀ and the light press intensity threshold IT_(L) issometimes referred to as detecting the contact on the touch-surface. Adecrease of characteristic intensity of the contact from an intensityabove the contact-detection intensity threshold IT₀ to an intensitybelow the contact-detection intensity threshold IT₀ is sometimesreferred to as detecting liftoff of the contact from the touch-surface.In some embodiments IT₀ is zero. In some embodiments, IT₀ is greaterthan zero. In some illustrations a shaded circle or oval is used torepresent intensity of a contact on the touch-sensitive surface. In someillustrations, a circle or oval without shading is used represent arespective contact on the touch-sensitive surface without specifying theintensity of the respective contact.

In some embodiments, described herein, one or more operations areperformed in response to detecting a gesture that includes a respectivepress input or in response to detecting the respective press inputperformed with a respective contact (or a plurality of contacts), wherethe respective press input is detected based at least in part ondetecting an increase in intensity of the contact (or plurality ofcontacts) above a press-input intensity threshold. In some embodiments,the respective operation is performed in response to detecting theincrease in intensity of the respective contact above the press-inputintensity threshold (e.g., the respective operation is performed on a“down stroke” of the respective press input). In some embodiments, thepress input includes an increase in intensity of the respective contactabove the press-input intensity threshold and a subsequent decrease inintensity of the contact below the press-input intensity threshold, andthe respective operation is performed in response to detecting thesubsequent decrease in intensity of the respective contact below thepress-input threshold (e.g., the respective operation is performed on an“up stroke” of the respective press input).

In some embodiments, the device employs intensity hysteresis to avoidaccidental inputs sometimes termed “jitter,” where the device defines orselects a hysteresis intensity threshold with a predefined relationshipto the press-input intensity threshold (e.g., the hysteresis intensitythreshold is X intensity units lower than the press-input intensitythreshold or the hysteresis intensity threshold is 75%, 90%, or somereasonable proportion of the press-input intensity threshold). Thus, insome embodiments, the press input includes an increase in intensity ofthe respective contact above the press-input intensity threshold and asubsequent decrease in intensity of the contact below the hysteresisintensity threshold that corresponds to the press-input intensitythreshold, and the respective operation is performed in response todetecting the subsequent decrease in intensity of the respective contactbelow the hysteresis intensity threshold (e.g., the respective operationis performed on an “up stroke” of the respective press input).Similarly, in some embodiments, the press input is detected only whenthe device detects an increase in intensity of the contact from anintensity at or below the hysteresis intensity threshold to an intensityat or above the press-input intensity threshold and, optionally, asubsequent decrease in intensity of the contact to an intensity at orbelow the hysteresis intensity, and the respective operation isperformed in response to detecting the press input (e.g., the increasein intensity of the contact or the decrease in intensity of the contact,depending on the circumstances).

For ease of explanation, the description of operations performed inresponse to a press input associated with a press-input intensitythreshold or in response to a gesture including the press input are,optionally, triggered in response to detecting: an increase in intensityof a contact above the press-input intensity threshold, an increase inintensity of a contact from an intensity below the hysteresis intensitythreshold to an intensity above the press-input intensity threshold, adecrease in intensity of the contact below the press-input intensitythreshold, or a decrease in intensity of the contact below thehysteresis intensity threshold corresponding to the press-inputintensity threshold. Additionally, in examples where an operation isdescribed as being performed in response to detecting a decrease inintensity of a contact below the press-input intensity threshold, theoperation is, optionally, performed in response to detecting a decreasein intensity of the contact below a hysteresis intensity thresholdcorresponding to, and lower than, the press-input intensity threshold.As described above, in some embodiment, the triggering of theseresponses also depends on time-based criteria being met (e.g., a delaytime has elapsed between a first intensity threshold being met and asecond intensity threshold being met).

User Interfaces and Associated Processes

Attention is now directed towards embodiments of user interfaces (“UI”)and associated processes that may be implemented on an electronic devicewith a display, such as portable multifunction device 100 or device 300.

FIGS. 5A-5U illustrate example user interfaces for selecting andinteracting with device modes in accordance with some embodiments. Theuser interfaces in these figures are used to illustrate the processesdescribed below, including the processes in FIGS. 6A-6C and 7A-7B.Although some of the examples which follow will be given with referenceto inputs on a touch-screen display (where the touch-sensitive surfaceand the display are combined), in some embodiments, the device detectsinputs on a touch-sensitive surface 451 that is separate from thedisplay 450, as shown in FIG. 4B. In some embodiments, the devicedetects inputs provided by a pointing device or other input device.

FIG. 5A illustrates mode affordances 5002, 5004, 5006 corresponding toan activity mode, a work mode, and a drive mode, respectively, of thedevice in accordance with some embodiments. Mode affordances 5002, 5004,5006 are shown on a lock screen of the device. The device becomeslocked, e.g., in response to user input (such as a user input receivedat one or more physical buttons, such as push button 206) and/or whenthe device has been idle for a predetermined amount of time. In someembodiments, when the device is locked, a set of device features (e.g.,a set of applications and/or content) is inaccessible. In someembodiments, the device shown in FIG. 5A is locked and in a sleep state.The device enters a sleep state, e.g., in response to user inputreceived at push button 206 received while the device is awake toinstruct the device to sleep and/or when the device has been idle for apredetermined amount of time. A lock screen is displayed, e.g., when thedevice enters a locked state and/or when the device is awakened while ina locked state. The device is awakened, for example, in response toreceived user input (e.g., input received at one or more physicalbuttons, such as push button 206 and/or menu button 204).

In some embodiments, in response to receiving input to unlock and/orawaken the device (and/or in response to receiving other input thatresults in a lock screen being displayed), the device determines a modeof the device, such as a mode of the device that is currently activeand/or a mode of the device that is recommended for activation.Determining a mode of the device includes, e.g., determining that timeand/or device location criteria for the mode are met. For example, thedevice determines whether a current time (e.g., 2:40 PM) meets timecriteria for the work mode. Time criteria for the work mode include,e.g., one or more time ranges indicating when the device user istypically at work, such as the time range 9:00 AM-1:30 and 2:30-6:00 PM.In accordance with a determination that the current time falls withinthe time range, the device determines that the work mode is a mode ofthe device that is recommended for activation. In some embodiments(e.g., when time and/or device location criteria for multiple modes aremet), multiple modes are concurrently recommended.

In some embodiments, the device displays a visual indication thatcorresponds to a recommendation to activate a mode of the device. Forexample, an area corresponding to mode affordance 5004 is shaded toindicate that the work mode is the recommended mode for activationand/or to visually distinguish mode affordance 5004 from modeaffordances 5002 and 5006. The text of mode affordance 5004 is bolded toindicate that the work mode is the recommended mode for activationand/or to visually distinguish text associated with mode affordance 5004from text associated with mode affordances 5002 and 5006.

In some embodiments, the device displays information associated with amode of the device that is recommended for activation. The informationincludes, e.g., one or more information items such as notifications(including, e.g., calendar appointment information, reminderinformation, e-mail information, telephone call information, messageinformation, stock information, activity information, and/or navigationinformation, such as currently predicted drive time), content items,content item metadata, application data, and/or graphical items (e.g.,icons) indicating a source of the information. The information includes,e.g., one or more information items having a highest priority among theinformation items of the mode (e.g., determined in accordance withautomatic weighting or in accordance with user preference information).For example, information associated with a work mode includes calendarappointment notification 5010. In some embodiments, calendar appointmentnotification 5010 includes calendar icon 5012. In some embodiments, theinformation associated with the work mode is displayed at a locationcorresponding to mode affordance 5004, e.g., a location proximate tomode affordance 5004.

In some embodiments, to activate the recommended mode, a user providesinput at a location corresponding to the recommended mode affordance.For example, recommended mode 5004 is activated in response to userinput such as a gesture (e.g., a finger tap gesture) detected while afocus selector 5008 is at a location corresponding to the recommendedmode affordance 5004.

FIG. 5B illustrates work mode interface 5014, in accordance with someembodiments. In some embodiments, work mode interface 5014 is displayedin accordance with activation of mode affordance 5004. In someembodiments, a mode interface (such as work mode interface 5014)displays a plurality of information items associated with a mode. Forexample, work mode interface includes a view 5016 of data from acalendar application, meeting information 5018, a notification 5020 froma messaging application, and a notification 5022 from a remindersapplication. In some embodiments, in response to user input such as agesture (e.g., a finger tap gesture) detected while a focus selector isat a location of an information item, additional informationcorresponding to the information item is displayed, an applicationcorresponding to the information item is activated, and/or an interfacefor an application corresponding to the information item is displayed.For example, in some embodiments, in response to user input at alocation corresponding to notification 5020 from the messagingapplication, the device activates a messaging application and/ordisplays a messaging application interface. In some embodiments,additional information items associated with a mode interface arerevealed in response to user input such as a gesture (e.g., a draggesture that drags work mode interface 5014, e.g., in a verticaldirection, to reveal additional mode interface information items belowand/or above the information items currently displayed). In someembodiments, work mode interface 5014 includes a mode affordance chrome5024 including, e.g., activity mode affordance 5002, work modeaffordance 5004, drive mode affordance 5006, and/or home mode affordance5026. In some embodiments, work mode interface 5014 includes a modesettings affordance 5028.

In some embodiments, a mode interface (e.g., work mode interface 5014)includes information items in addition to a set of currently displayedinformation items. The additional information items are displayed, e.g.,in response to user input (e.g., a vertical drag gesture to revealinformation items below or above currently displayed information itemsand/or a horizontal drag gesture to reveal additional information itemsto the left or right of currently displayed information items).

FIG. 5C illustrates activation of a mode that is not the recommendedmode, in accordance with some embodiments. For example, a drive modecorresponding to drive mode affordance 5006 is activated (while thedrive mode is not the recommended mode, as indicated by the lack ofvisually distinguishing features applied to drive mode affordance 5006)in response to a user input such as a gesture (e.g., a finger tapgesture) provided while a focus selector 5008 is at a locationcorresponding to the drive mode affordance 5006.

FIG. 5D illustrates drive mode interface 5030, in accordance with someembodiments. In some embodiments, drive mode interface 5030 is displayedin accordance with activation of drive mode affordance 5006. In someembodiments, drive mode interface 5030 includes data from a mapapplication (e.g., navigation instructions 5032, map 5034, and/or placeinformation affordance 5036), a Share ETA affordance 5038 for sharing(e.g., with one or more preconfigured contacts of the user) an estimatedtime of arrival (“ETA”), and/or notification 5046 from a remindersapplication. In some embodiments, a user shares a current location(e.g., with one or more preconfigured contacts of the user) in lieu ofand/or in addition to an ETA. In some embodiments, drive mode interface5014 includes a mode settings affordance 5028.

In some embodiments, one or more information items of a mode interfaceare constrained to have a minimum area and/or minimum font size. Largerinterface features are provided to improve safety when drive modeinterface 5030 is active and/or when the device determines that it islocated in a moving vehicle. For example, the font size of navigationinstructions 5032, place information affordance 5036, and notification5046 of drive mode interface 5030 is larger than font sizes used inother mode interfaces such as work mode interface 5014. The area oficons shown in drive mode interface 5030, such as reminders icon 5042,is larger than the area of icons shown in work mode interface 5014, suchas reminders icon 5044. In some embodiments, one or more informationitems (and/or types of information items) are not shown (e.g., notpermitted to be shown) when drive mode interface 5030 is active and/orwhen the device determines that it is located in a moving vehicle. Forexample, in some embodiments, mode settings affordance 5028 ceases to beshown when the device determines that a vehicle in which the device islocated is moving.

In some embodiments, different mode interfaces are configured to displaydifferent information originating from the same application. Forexample, when a reminder application includes reminder 5022 and reminder5046, reminder 5046 is displayed in drive mode interface 5030 but not inwork mode interface 5014, and reminder 5022 is displayed in work modeinterface 5014 but not in drive mode interface 5030. A furtherdescription of configuring a mode interface to display or to not displaya category of reminders is provided below with reference to FIG. 5J.

FIGS. 5E-5G illustrate a gesture on a lock screen used to activate amode that is not a recommended mode, in accordance with someembodiments. In FIG. 5E, a work mode corresponding to mode affordance5004 is recommended for activation, e.g., as indicated by the visuallydistinguishing features of mode affordance 5004 (such as the shading andbold text of mode affordance 5004). In some embodiments, in response touser input, such as a horizontal drag gesture, the mode affordances arescrolled relative to the displayed lock screen (e.g., to adjust and/orreveal one or more modes of the device). For example, the device detectsa gesture (e.g., a drag gesture) as focus selector 5008 moves from afirst position 5008 a to a second position 5008 b along a path indicatedby arrow 5043, as shown in FIG. 5E, and from the second position 5008 bto a third position 5008 c along a path indicated by arrow 5044, asshown in FIG. 5F. FIG. 5F illustrates an intermediate state of lockscreen as a drag gesture is received. In FIG. 5F, mode affordances 5002,5004, 5006 have shifted to the left, such that mode affordance 5002 haspartially “slid off” of the left edge of display 400 and mode affordance5026 is partially revealed at the right edge of display 400. As modeaffordance 5004 shifts to the left, calendar appointment notification5010 corresponding to mode affordance 5004 also shifts to the left.

In FIG. 5G, in response to receiving the user input including the draggesture, drive mode affordance 5006 is shown in a position correspondingto the final focus selector position 5008 c of the drag gesture. In someembodiments, in response to determining that user input to change aposition of a mode affordance has moved the mode affordance beyond athreshold distance, the device centers the mode affordance (e.g.,relative to the lock screen). In some embodiments, user input movingdrive mode affordance 5006 to a position that is at or near the centerof display 400 selects the drive mode as the active mode of the device.In some embodiments, in response to detecting the gesture, the devicedisplays information associated with a drive mode, e.g., remindernotification 5046 and/or reminder icon 5042. In some embodiments, whenthe drive mode is active, one or more settings associated with the drivemode take effect. In some embodiments, in response to receiving a userinput while a focus selector is at a location corresponding to modeaffordance 5006, such as a tap gesture at mode affordance 5006, thedevice displays a drive mode interface (e.g., drive mode interface 5030as described with regard to FIG. 5D).

FIG. 5H illustrates overriding an active mode of a device, in accordancewith some embodiments. In FIG. 5H, a work mode is an active mode of thedevice, as indicated in work mode interface 5014 (e.g., by the title“Work” as shown at 5050 and the visually distinguishing features, suchas the shading, of work mode affordance 5004 in mode affordance chrome5024). In some embodiments, in response to user input such as a gesture(e.g., a tap gesture) detected while a focus selector 5052 is at alocation of a mode affordance for a mode other than the work modeaffordance 5004 (e.g., while the focus selector 5052 is at home modeaffordance 5026), the selected mode (e.g., the home mode) overrides thework mode. When the home mode overrides the work mode, the home mode isactivated and, in some embodiments, home mode interface 5054 isdisplayed as shown in FIG. 5I. In some embodiments, activating the homemode allows a user to perform an operation in the home mode, such asmaking changes to the interface and/or settings of the home mode. Insome embodiments, activating the home mode causes one or more settingsof the home mode to take effect.

FIG. 5I illustrates home mode interface 5054, in accordance with someembodiments. In some embodiments, home mode interface 5054 is displayedin response to user input received at a location corresponding to homemode affordance 5026. In some embodiments, home mode interface 5054includes information items for a video viewer application (e.g., contentthumbnail image 5056, content identification information 5058, and/orcontent episode/chapter information 5060). The content episode/chapterinformation 5060 includes, e.g., information indicating unwatchedepisodes (e.g., dot 5062 indicates that an episode is unwatched) and/orinformation indicating progress in an episode that has been partiallywatched (e.g., “21 of 29 minutes watched, as indicated at 5060). Contentepisode/chapter information 5060 is, e.g., information associated withrecently viewed content (such as recently viewed content while the homemode was previously active on the device). In this way, when the homemode is activated, a user is provided with a convenient interface forresuming playback of recently played content. In some embodiments,information items of home mode interface 5054 include one or morecontrol affordances 5064, 5066 for controlling devices communicativelyconnected to the device (e.g., widgets for controlling devices in a homeautomation system, such as HomeKit™ from Apple Inc. of Cupertino,Calif.). In some embodiments, information items of home mode interface554 include one or more application icons 5068, 5070, 5072, 5074, e.g.,for applications that are frequently used while the home mode is active.In some embodiments, information items of home mode interface 5054include a notification 5076 from a reminders application.

In some embodiments, in response to user input such as a gesture (e.g.,a tap gesture) detected while a focus selector 5078 is at a location ofa mode settings affordance 5028, a mode settings interface 5080 isdisplayed.

FIG. 5J illustrates a mode settings interface 5080, in accordance withsome embodiments. In some embodiments, mode settings interface 5080 isan interface for adding, removing, and/or modifying information itemsand/or settings of one or more modes.

In some embodiments, mode settings interface 5080 includes one or moreaffordances for adjusting network settings (e.g., affordances 5082,5084, 5086 for enabling and disabling Wi-Fi, Cellular Data, and/orBluetooth, respectively; affordance 5090 for removing a currently addedWi-Fi network, affordance 5092 for adding one or more Wi-Fi Networks,affordance 5094 for removing a currently added accessory that connectsto the device via Bluetooth, and/or affordance 5096 for adding one ormore accessories to connect to the device via Bluetooth).

In some embodiments, mode settings interface 5080 includes one or moreaffordances for adding, modifying, and/or removing applicationinformation items. For example, affordance 5098 corresponds toinformation items 5056, 5058, 5060 and/or 5062 for a video viewerapplication. In some embodiments, in response to a user input receivedwhile a focus selector is at a location corresponding to affordance5098, information items 5056, 5058, 5060 and 5062 for a video viewerapplication are removed from home mode interface 5054.

In some embodiments, mode settings interface 5080 includes affordance5100 that corresponds to home accessory control. For example, to removea home accessory control region from home mode interface 5054, a userprovides input at a location corresponding to affordance 5100. To removeindividual controls 5064 or 5066 for controlling home accessory devices,user input is provided at a location corresponding to affordances 5112or 5113, respectively. To add controls for home accessory devices, userinput is provided at a location corresponding to affordance 5114.

Affordances 5102, 5104, 5106, and 5108 are usable to remove applicationicons 5068, 5070, 5072, and 5074, respectively from home mode interface5054. For example, to remove weather application icon 5072 from homemode interface 5054, a user provides user input while a focus selectoris at weather application removal affordance 5104. Affordance 5110 isusable to remove reminder notification area 5076 from home modeinterface 5054. To remove reminders from home mode interface 5054, auser provides user input while a focus selector is at a location thatcorresponds to reminders removal affordance 5114.

In some embodiments, a mode is configurable to display communicationsand/or communication notifications from a filtered set of contacts. Forexample, a user may wish to avoid displaying e-mail from work contactswhile the user is at home (e.g., when the home mode is active). Inanother example, a user wishes to avoid displaying message notificationsfrom personal contacts while the user is at work (e.g., when the workmode is active). In some embodiments, mode settings interface 5080includes one or more affordances 5116 for removing contacts (and/orgroups of contacts) from which messages and/or message notifications areto be displayed while the home mode is active. In some embodiments, modesettings interface 5080 includes an affordance 5118 for adding contacts(and/or groups of contacts) from which messages and/or messagenotifications are to be displayed while the home mode is active. In someembodiments, application settings such as contact settings for e-mail,phone, calendar, and/or location sharing are configurable (e.g., in modesettings interface 5080) to limit information displayed in a mode toinformation associated with a limited set of contacts.

In some embodiments, a mode is configurable to display reminders and/orreminder notifications from a filtered set of reminders. For example, aset of reminders are stored in a “Work Reminders” group and a differentset of reminders is stored in a “Home Reminders” group. In someembodiments, mode settings interface 5080 includes one or moreaffordances 5120 for removing a reminder group from which remindersand/or reminder notifications are to be displayed while the home mode isactive. In some embodiments, mode settings interface 5080 includes anaffordance 5122 for adding a reminder group from which reminders and/orreminder notifications are displayed while the home mode is active.

In some embodiments, mode settings interface 5080 includes one or moreaffordances 5124, 5126, 5128, 5130 for adding application informationitems (e.g., application icons, application notification areas,application notifications, and/or application widgets) to home modeinterface 5054. For example, to add a view of data from a calendarapplication to home mode interface 5054 (e.g., similar to view 5016 ofdata from a calendar application shown in work mode interface 5014), auser provides user input while a focus selector is at a locationcorresponding to affordance 5124.

In some embodiments, mode settings interface 5080 includes settingsaffordances in addition to a set of currently displayed settingsaffordances. The additional settings affordances are displayed, e.g., inresponse to user input. For example, in some embodiments, in response toa vertical drag gesture, the device reveals settings affordances belowor above currently displayed affordances (e.g., settings affordances forthe same mode as the currently displayed mode affordances). In someembodiments, in response to a horizontal drag gesture, the devicereveals settings affordances to the left or right of currently displayedsettings (e.g., settings for different modes).

In some embodiments, mode settings interface 5080 includes an affordance5146 corresponding to a “Done” option to apply changes (e.g., allchanges made using affordances of mode settings interface 5080 sincemode settings interface 5080 was displayed). In some embodiments, modesettings interface 5080 includes an affordance 5148 corresponding to a“Cancel” option to cancel changes (e.g., all changes made usingaffordances of mode settings interface 5080 since mode settingsinterface 5080 was displayed).

In some embodiments, a mode settings interface 5080 is used to performan operation in a mode that is not the currently active mode. Forexample, a user may wish to wrap up a task stored in a work remindersgroup after the user returns home. While the user is still at work, andthe work mode is active, the user can override the work mode to activatethe home mode. While the home mode is activated (and the home modeinterface 5054 is displayed), the user visits the mode settingsinterface 5080 and adds the work reminders group to the remindersnotifications for the home mode. The device returns to the work mode.Later, when the user is at home and the home mode is active, the workreminder from the work reminders group is displayed in the home modeinterface 5054.

A process for performing an operation in an override mode that is notthe currently active mode is illustrated in the series of userinterfaces of FIGS. 5I-5M. While a work mode is active (e.g., at a timethat is within a time range associated with the work mode), an input isdetected to activate the home mode, overriding the currently active workmode. An operation is performed, e.g., while the home mode is overridingthe work mode. For example, as indicated in FIG. 5I, in response to userinput detected while a focus selector 5078 is at a locationcorresponding to a mode settings affordance 5028, a mode settingsinterface 5080 is displayed. In FIG. 5J, a user input is detected whilea focus selector 5132 is at a location corresponding to affordance 5122(e.g., corresponding to an “Add Reminders” setting of a remindersapplication). In response to detecting the user input while the focusselector 5132 is at the location corresponding to affordance 5122, thedevice displays additional reminders groups 5136, 5138, 5140, 5142, asindicated at FIG. 5K. FIG. 5K indicates that a user input is detectedwhile a focus selector 5134 is at affordance 5136, corresponding to a“Work Reminders” group to be added to reminder notification area 5076 ofwork mode interface 5054. As indicated at FIG. 5L, a user input isdetected while a focus selector 5144 is at affordance 5146, for applyingchanges made using mode settings interface 5080 (e.g., to apply thechange that used affordance 5136 to add the Work Reminders group to homemode interface 5054). In FIG. 5M, a work group notification (“Organizewelcome reception,” as shown at 5022 of work mode interface 5014) hasbeen added to home mode interface 5054 in reminders notification area5076.

In some embodiments, as indicated in the series of user interfaces ofFIGS. 5M-5N, after performing the operation in the overriding home mode(e.g., changing a setting of the home mode by adding the “WorkReminders” group to the home mode interface 5054), the device returns tothe work mode. In some embodiments, returning to the work mode includesdetecting user input, such as user input received while a focus selector5150 is at work mode affordance 5004, as shown in FIG. 5M, and inresponse to detecting the user input, displaying the work mode interface5014, as shown in FIG. 5N.

In some embodiments, as indicated in the series of user interfaces ofFIGS. 5N-5P, a list of mode affordances for the modes of the device isdisplayed in response to user input that includes an increase in acharacteristic intensity of a contact on a touch-sensitive surface abovea mode display intensity threshold. For example, in FIG. 5N, a contacton touch screen 112 is detected while a focus selector 5152 is at alocation corresponding to mode affordance chrome 5024. In response todetermining that a characteristic intensity of the contact has increasedabove a mode display intensity threshold (e.g., a deep press intensitythreshold ITS, as illustrated at contact intensity meter 5156, oranother intensity threshold such as a light press intensity thresholdIT_(L)), a mode selection interface 5158 is displayed, as indicated atFIG. 5O. In some embodiments, mode selection interface 5158 includes allof the modes of the device (e.g., including modes not shown in modeaffordance chrome 5024, such as weekend mode affordance 5161). In someembodiments, mode selection interface includes a subset, less than all,of the modes of the device (e.g., and modes not currently displayed areaccessible via input that scrolls the listed modes). As indicated inFIG. 5O, a contact/focus selector 5160 is at a position corresponding toa home mode affordance 5026. In response to the detected contact (e.g.,a contact having a characteristic intensity above a contact detectionthreshold IT₀), the home mode interface 5054 is displayed, as indicatedat FIG. 5P.

In some embodiments, (e.g., when a user input meets information itemmovement criteria), a gesture is used to override a current mode, removethe information item from the current mode, activate an alternate mode,and/or add an information item to the alternate mode. In someembodiments, a user input meets information item movement criteria whenthe duration of a contact with touch screen 112 exceeds a thresholdduration. In some embodiments, as explained below with reference toFIGS. 5Q-5U, a user input meets information item movement criteria whena characteristic intensity of a detected contact is above a thresholdintensity.

FIGS. 5Q-5U illustrate an input detected to activate the home mode,(e.g., thereby overriding the work mode) and an operation is performedwhile the home mode is activated and the work mode is overridden, inaccordance with some embodiments. In FIG. 5Q, a work mode interface 5014including message notification 5020 is displayed. A contact/focusselector 5162 is at a position corresponding to message notification5020. The contact has a characteristic intensity above a contactdetection threshold IT₀, as indicated at contact intensity meter 5156.

As shown in FIG. 5R, when a characteristic intensity of a detectedcontact at is above a hint intensity threshold, an information item at alocation corresponding to the location of the contact is highlighted.For example, in FIG. 5R, a characteristic intensity of the detectedcontact at a location indicated by focus selector 5162 (corresponding toa location of message notification 5020) is above a hint intensitythreshold (e.g., above a contact detection threshold IT_(H) as indicatedby contact intensity meter 5156). In response to detecting thecharacteristic intensity of the contact above the hint intensitythreshold, an information item at a location corresponding to focusselector 5162 (e.g., message notification 5020) is visuallydistinguished from other information items of work mode interface 5014.For example, message notification is shown with a bold outline, as shownin FIG. 5R.

In FIG. 5S, a characteristic intensity of the detected contact (e.g., ata location indicated by focus selector 5162 a) is above an informationitem movement relocation threshold (e.g., above a light press thresholdIT_(D) as indicated by contact intensity meter 5156, or above anotherintensity threshold). In response to detecting a characteristicintensity of the contact above the movement relocation threshold, aninformation item at a position corresponding to the contact (e.g.,message notification 5020) is displayed detached from its currentlocation. After message notification 5020 is detached from its currentlocation, message notification 5020 is movable to a different mode. Forexample, as indicated at FIGS. 5S-5T, the user input includes a gesture,such as a gesture that moves the contact from a first location of thefocus selector at 5162 a to a subsequent location of the focus selectorat 5162 b along a path indicated by arrow 5164. In some embodiments, themessage notification is “attached” to the contact/focus selector andmoves along a path 5164 as the contact/focus selector moves along thepath 5164. In some embodiments, the received gesture overrides the workmode, activates the home mode, and adds the message notification 5020 tothe home mode. In some embodiments, the message notification 5020 isdisplayed in home mode interface 5054, as indicated at FIG. 5U.

In some embodiments, a user input (e.g., received after a characteristicintensity of the detected contact is above an information item movementrelocation threshold) is a gesture that moves contact/focus selector5162 to the left. When the movement to the left exceeds a mode changethreshold distance, the gesture overrides the work mode, activates theactivity mode, and adds message notification 5020 to an activity modeinterface (because the activity mode is the mode preceding the currentmode, e.g., as indicated by the location of activity mode affordance5002 to the left of work mode affordance 5004 in mode affordance chrome5024). In some embodiments, a user input (e.g., received after acharacteristic intensity of the detected contact is above an informationitem movement relocation threshold) is a gesture that movescontact/focus selector 5162 to the right. When the movement to the rightexceeds a mode change threshold distance, the gesture overrides the workmode, activates the drive mode, and adds message notification 5020 todrive mode interface 5030 (because drive mode is the mode following thecurrent mode, e.g., as indicated by the location of drive modeaffordance 5006 to the right of work mode affordance 5004 in modeaffordance chrome 5024).

In some embodiments, when message notification 5020 is added to anothermode, such as an activity mode (e.g., an activity mode interface), adrive mode (e.g., drive mode interface 5030), or a home mode (e.g., homemode interface 5054), message notification 5020 is removed from the workmode (e.g., message notification 5020 is no longer displayed in workmode interface 5014).

FIGS. 6A-6C illustrate a flow diagram of a method 600 of overriding adevice mode, in accordance with some embodiments. The method 600 isperformed at an electronic device (e.g., device 300, FIG. 3, or portablemultifunction device 100, FIG. 1A) with a display. In some embodiments,the display is a touch-screen display and the touch-sensitive surface ison or integrated with the display. In some embodiments, the display isseparate from the touch-sensitive surface. Some operations in method 600are, optionally, combined and/or the order of some operations is,optionally, changed.

As described below, the method 600 provides an intuitive way to interactwith different device modes. The method reduces the number, extent,and/or nature of the inputs from a user when changing device modes,thereby creating a more efficient human-machine interface. Forbattery-operated electronic devices, enabling a user to changing devicemodes faster and more efficiently conserves power and increases the timebetween battery charges.

The device (602) displays a first mode of a plurality of modes of thedevice. Examples of modes are provided below. In some embodiments, amode is a mode of the entire device (e.g., the mode provides the primaryinterface for interacting with device features). In some embodiments, amode is subsidiary to a primary interface for interacting with devicefeatures.

The plurality of modes of the device include (604) the first mode and asecond mode. In some embodiments, a mode is a state of the device inwhich a set of operations that are relevant to, e.g., a place, timeand/or an activity of the device or its user are performed, available,or otherwise made prominent on the device. For example, icons forapplications relevant to a particular mode are displayed concurrentlywhen the mode is active (e.g., application initiation icons 5068, 5070,5072, and 5074 are displayed concurrently in home mode interface 5054when the home mode of the device is active, as indicated in FIG. 5I). Insome embodiments, a mode is activated in the foreground (e.g.,information associated with a mode, such as a mode interface, isdisplayed), a mode is activated in the background (e.g., one or moresettings associated with the mode are applied to the device), or a modeis activated in the foreground and in the background.

Examples of modes, mode activation criteria, and mode features aredescribed below in Table 1. Time criteria, location criteria, movementcriteria, and transit criteria that correspond to the various modesdescribed in Table 1 are explained below.

In some embodiments, time criteria are met when a current time (e.g.,determined by the device) is within defined time parameters (e.g., auser input time range, a default time range, and/or an automaticallydetermined time range) for a particular mode (e.g., a mode listed belowin Table 1).

In some embodiments, location criteria are met when a current locationof the device is within defined location parameters that correspond to aparticular mode (e.g., a mode listed below in Table 1). The currentlocation of a device is determined using, e.g., position data determinedfrom GPS, a Wi-Fi network, a location beacon (e.g., iBeacon), and/orBluetooth pairing (e.g., detecting availability of a Bluetoothconnection with a Bluetooth transmitter in a known location, such as anautomobile). For example, a device determines that a location criterionis satisfied in response to determining that a current location of thedevice is within (and/or within a predetermined distance from) alocation such as a neighborhood, a city block, an address, a pointlocation, a set of coordinates (e.g. latitude/longitude), and/or anotherdefined boundary (such as a virtual boundary associated with a campus, abuilding, or a portion of a building). Location parameters aredetermined, e.g., in accordance with user input (a text and/or map pinentry indicating a location) and/or automatically (e.g., based on datastored by the device, such as a location of the device determined by thedevice during a typical time frame associated with the mode, data fromcommunications, and/or data from calendar entries). In some embodiments,a device determines that a location criterion is satisfied in responseto detecting a signal from a Wi-Fi network that corresponds to aparticular mode (e.g., as indicated by a mode settings interface).

In some embodiments, travel criteria are met when a current location ofthe device does not match a previously defined location, matches apreviously defined location for a mode that uses travel criteria, is ina geographic region that is different from the defined home and/or worklocation (e.g., a different city, state, and/or country), or is beyond adefined distance from a defined home and/or work location.

In some embodiments, movement criteria are met when output from one ormore device sensors (e.g., the device accelerometer) indicates avelocity exceeding a predetermined threshold and/or indicates a velocitythat falls within a predetermined velocity range. In some embodiments,determining whether device movement meets movement criteria includesdetermining, at a first time, a first location of the device;determining, at a second time, a second location of the device;determining a distance between the first location of the device and thesecond location of the device; and, based on a velocity determined fromthe distance between the first location and the second location dividedby the difference between the first time and the second time,determining whether the first movement exceeds a velocity thresholdand/or falls within a predetermined velocity range. For example,movement criteria include walking movement criteria (e.g., the velocityexceeds a movement threshold and/or the velocity falls within a rangethat corresponds to typical walking movement), running movement criteria(e.g., the velocity exceeds a movement threshold and/or the velocityfalls within a range that corresponds to typical running movement),bicycling movement criteria (e.g., the velocity exceeds a movementthreshold and/or the velocity falls within a range that corresponds totypical bicycling movement), and/or automobile/transit movement criteria(e.g., the velocity exceeds a movement threshold and/or falls within arange that corresponds to typical automobile movement and/or transitmovement, such as bus, train, airplane, etc.).

TABLE 1 Mode Examples Mode Title Mode Activation Criteria Mode FeaturesWork Mode Time criteria (e.g., device time is See, e.g., work modeinterface 5014 within a time range that as illustrated by FIG. 5Bcorresponds to typical work hours and/or typical work days of the week)and/or location criteria (e.g., device location corresponds to workplacelocation) Home Mode Time criteria (e.g., device time is See, e.g., workmode interface 5054 within a time range that as illustrated by FIG. 5Icorresponds to typical home hours when the user is home) and/or locationcriteria (e.g., device location corresponds to home location) Drive ModeTime criteria (e.g., time is within See, e.g., drive mode interface 5030a time range that corresponds to as illustrated by FIG. 5D typicalcommute hours), location criteria (e.g., device location corresponds toa typical commute start point, end point, and/or route, and/or thecurrent device location is a location that is not home or work), and/ormovement criteria (e.g., device movement meets transit movementcriteria). Transit Time criteria (e.g., device time is Transitinformation applications, Mode within a time range that navigationinformation (e.g., a corresponds to typical commute navigationapplication is activated in hours), location criteria (e.g., a transitmode), and/or place device location corresponds to information regardingdestinations typical transit stops and/or a along a transit linelocation that is not home or work) and/or movement criteria (e.g.,movement meets transit movement criteria) Walk Mode Time criteria (e.g.,device time is Navigation information (e.g., a within a time range thatnavigation application is activated in corresponds to typical commute awalk mode) and/or place and/or activity hours), location informationregarding locations in the criteria (e.g., device location vicinity ofthe device corresponds to location that is not home or work) and/ormovement criteria (e.g., device movement meets walk movement criteria)On-the-go Movement criteria (e.g., device Incorporates features ofdrive, transit, Mode movement meets walk movement walk, run, and/ortravel modes. criteria, run movement criteria, bicycle movementcriteria, and/or transit movement criteria) and/or travel criteriaTravel Location Criteria: Detected Information applicable to travel,Mode device location that does not tourism, and/or a particular region,match and/or is beyond a such as a region in which the device thresholddistance from any is currently located (determined, for predefined orpredetermined example, based on features that users locations associatedwith another in the region typically use), e.g., one mode of the deviceor more translation applications, currency conversion applications,distance conversion applications, size conversion applications,temperature conversion applications, weather applications, editorialcontent and/or user based content, camera application, and/or photoviewer application. Weekend Time criteria (e.g., device time Applicationicons for applications Mode corresponds to typical non-work associatedwith leisure activities days) and/or location criteria and/or hobbies(e.g., device location corresponds to home and/or typical weekendlocation) Activity Time criteria (e.g., device time Fitness and otherhealth and/or (Workout) corresponds to typical activity nutritionrelated applications, an Mode time), location criteria (e.g., interfacefor selecting a current device location corresponds to workout activityfor tracking and/or a typical activity location, such as map thatindicates a path traveled by the user's gym), and/or the user during aworkout and movement criteria (e.g., device associated statisticsmovement meets run movement criteria, for example, the device user hasbeen moving at a running speed for a predetermined amount of time (e.g.,not just running for the bus)). Guest Mode The phone is in possession ofa Restricted access to applications, user other than the owner of thecontacts, and/or device settings device, e.g., as determined from userinput and/or login information Venue Time criteria (e.g., device timeInformation regarding performers, Mode corresponds to scheduled event atvendors, services, and/or artworks) a venue) and/or location criteriaand/or communications within a (e.g., device location corresponds regionassociated with the venue to a venue location) “You are No mode criteriaare met (for Information regarding places, events, here” Mode example,the device location is sales, menus, and/or movies playing. not alocation associated with an For example, the information is existingmode, the time is not a provided for locations near the device timeassociated with an existing location. mode, and/or device movement isnot a device movement associated with an existing mode). Default No modecriteria are met. In some Default interface, default operations, Modeembodiments, a defined mode and/or default settings. (e.g., one of theexamples of modes listed above) is configured to be used as a defaultmode that is activated when no mode criteria are met.

The first mode of the device is active (and, in some embodiments, afirst mode interface is displayed) when (606) a first set of time and/ordevice location criteria are met. For example, the first mode is a “workmode” and the first set of criteria are satisfied when a current time asdetermined by the device falls within a predefined (e.g., defined by theuser) or predetermined (e.g., defined from data collected by the device)time range (e.g., work hours) for a user of the mobile device and/or GPSor other location data for the mobile device indicate that the mobiledevice is at a predefined or predetermined work location for the user.

For example, in FIG. 5A, the device determines that a current time is2:40 PM. Based on a determination that this current time is within atime range defined by the user to indicate working hours (e.g., 9:30 AMto 6:30 PM), a work mode is active.

The second mode of the device is active (and, in some embodiments, asecond mode interface is displayed) when (608) a second set of timeand/or device location criteria, distinct from the first set of timeand/or device location criteria, are met. For example, the second modeis a “home mode” and the second set of criteria are satisfied when acurrent time as determined by the device falls within predefined orpredetermined time range for the home mode and/or GPS or other locationdata for the mobile device indicate that the mobile device is at apredefined or predetermined location for the home mode.

While the first set of time and/or device location criteria are met(610) (e.g., and the second set of time and/or device location criteriaare not met), and while the first mode of the device is active (e.g.,and information associated with a mode, such as a mode interface isdisplayed), the device detects (612) a first input that overrides thefirst mode of the device. In some embodiments, the first input is, e.g.,a voice command or a gesture (e.g., a contact or other input receivedwhile a focus selector is at a location corresponding to a modeaffordance, such as a “tap” gesture or mouse-click, and/or a user inputthat moves a focus selector across a display, such a movement of acontact across a touch-sensitive surface in a “swipe” gesture). Inresponse to detecting the first input, the device activates (614) thesecond mode of the device. In some embodiments, the device displaysinformation associated with a second mode of the device (e.g., a secondmode interface) when the device activates the second mode of the device.

For example, in FIG. 5H, a work mode of the device is active and thedevice is displaying work mode interface 5014. The device detects a userinput while focus selector 5052 is at a location corresponding to homemode affordance 5026. In response to detecting the user input, thedevice activates a home mode. In some embodiments, activating the homemode includes displaying home mode interface 5054, as indicated in FIG.5I.

After responding to the first input, while the second mode of the deviceis active (and, in some embodiments, while information associated withthe second mode is displayed) the device detects (616) a second input,such as an input that corresponds to a request to perform an operationin the second mode of the device. In some embodiments, an input thatcorresponds to a request to perform an operation includes, e.g., a userinput for displaying a mode settings interface 5080, a user input formodifying mode settings (e.g., modifications made using mode settingsinterface 5080), and/or a user input for applying modifications (e.g.,user input received at a location corresponding to affordance 5146 forapplying changes made using mode settings interface 5080). In someembodiments, an input that corresponds to a request to perform anoperation is, e.g., a user input to move an object from a first mode toa second mode (e.g., as described with regard to FIGS. 5Q-5U).

In response to detecting the second input, the device performs (618) anoperation in the second mode of the device. For example, the deviceapplies a change made using a mode settings interface 5080 (e.g., whenuser input is received at a location corresponding to affordance 5146,for applying changes made using mode settings interface 5080 to add a“Work Reminders” group to a reminder notifications area 5076 of homemode interface 5054, as described with regard to FIGS. 5I-5J). Inanother example, the device adds a message notification 5020 to the homemode interface 5054 (e.g., as described with regard to FIGS. 5Q-5U).

Example operations in the second mode include:

-   -   adding a notification to the second mode (e.g., the second mode        interface) such that the notification will be displayed when the        second mode is active;    -   adding an affordance (e.g., an application initiation icon) to        the second mode (e.g., to a second mode interface) such that the        affordance will be displayed and/or activated when the second        mode is active;    -   displaying a second mode interface (e.g., home mode interface        5054);    -   displaying a mode settings interface (e.g., home mode settings        interface 5080);    -   displaying and/or activating a control of the second mode (e.g.,        a home automation system control, such as 5064, 5066 shown in        FIG. 5I);    -   displaying and/or playing back media or other content of the        second mode (e.g., a video, a song, an image, a news article, a        website link, and/or a wallet pass);    -   displaying a subset of contacts of the second mode (e.g., a        subset that excludes certain contacts and/or a subset of        contacts that are only available while the device is in a        particular mode or modes);    -   restricting outbound communications and/or indications of        inbound communications to communications with a particular        subset of contacts (e.g., using affordances in a mode settings        interface such as 5116, 5518 shown in FIG. 5J);    -   displaying a subset of calendar appointment information of the        second mode (e.g., meeting, attendees);    -   displaying navigation information (e.g., a map and/or        directions);    -   displaying fuel station information (e.g., locations of fuel        stations, prices of fuel at nearby fuel stations);    -   displaying a location or pin (e.g., location of parked car);    -   enabling, disabling, and/or modifying voice assistant settings        (e.g., a voice assistant such as Siri has different        users/permissions in different modes);    -   displaying indications of applications used while the mode was        previously active; and/or    -   applying a setting, such as a privacy setting (e.g., a privacy        setting applicable to device location and/or ETA sharing), a        permission (e.g., while driving mode is active, no notifications        are permitted), an access restriction (e.g., restrict access to        particular applications and/or content when guest and/or family        mode is active), and/or a network setting (e.g., a network type        is designated for a particular mode, for example, Wi-Fi is used        for a call when home mode is active and LTE is used for a call        when on-the-go mode is active).

After performing the operation in the second mode of the device, thedevice returns (620) to (and, in some embodiments, resumes display of)the first mode of the device. For example, after adding a “WorkReminders” group to a reminder notification area 5076 of home modeinterface 5054, the device displays work mode interface 5014. In someembodiments, the device returns to the first mode automatically, such asafter a predetermined period of time since detecting the second inputand/or at a time when the device enters a sleep state. In someembodiments, the device returns to the first mode in response to thesecond input (e.g., a second input includes input received at affordance5146 for applying changes made using mode settings interface 5080). Forexample, in some embodiments, in response to receiving input ataffordance 5146 for applying changes made using mode settings interface5080, the device displays work mode interface 5014 (e.g., rather thandisplaying home mode interface 5054 as modified by the second input). Insome embodiments, the device returns to the first mode in response to athird input (e.g., a tap gesture received at work mode affordance 5004).

In some embodiments, performing the operation in the second mode of thedevice (e.g., while the first set of time and/or device locationcriteria are met and the second set of time and/or device locationcriteria are not met) includes adding (622) an affordance to the secondmode of the device. An affordance is, e.g., an application initiationicon (e.g., an application icon 5068, 5070, 5072, 5074 as shown in FIG.5I) that, when activated, initiates an application; a control affordance(e.g., a home automation control item 5064, 5066 as shown in FIG. 5I)that, when activated, initiates a function (e.g., of an accessorydevice); a media affordance (e.g., content episode/chapter information5060) that, when activated, initiates playback of content; and/or aninformation affordance (e.g., message notification 5020 as shown in FIG.5U or reminder notification 5022 in reminder notifications area 5076 asshown in FIG. 5M) that displays information for the respective mode.

In some embodiments, after returning to the first mode of the device,the device determines (624) that the second set of time and/or devicelocation criteria are met and, in response to determining that thesecond set of time and/or device location criteria are met, the deviceactivates and displays the second mode of the device and the devicedisplays the affordance in the second mode of the device.

For example, the device receives input to override a work mode andactivate a home mode, and while the home mode is active, a work modereminder 5022 is added to home mode interface 5054, as described withregard to FIGS. 5I-5M. After the work mode reminder 5022 is added tohome mode interface 5054, the device returns to displaying work modeinterface 5014, e.g., in response to an input received at workaffordance 5004. Subsequently, in response to determining that timeand/or device location criteria for the home mode are met, the deviceactivates its home mode and displays home mode interface 5054. The workmode reminder 5022 of the work mode reminders group is displayed inreminder notifications area 5076 of home mode interface 5054 (because itwas previously added to home mode interface 5054).

In some embodiments, overriding the first mode includes (626) ceasing todisplay the first mode of the device and displaying the second mode ofthe device. For example, overriding the first mode, as described withregard to FIGS. 5H-5I, includes ceasing to display home mode interface5014 and displaying work mode interface 5054. In some embodiments,overriding the first mode includes displaying affordances of the secondmode without activating settings of the second mode. For example, thedevice user is able to see how the second mode interface appears, butadjustments to settings are not applied during the override. Forexample, when overriding a work mode to activate a home mode,affordances of the home mode (e.g., affordances 5056, 5058, 5060, 5062,5064, 5066, 5068, 5070, 5070, 5074, 5076 of home mode interface 5054)are displayed, but settings (e.g., network settings, such as 5082, 5084,5086 of FIG. 5J; permission settings; access settings; and/or privacysettings) are not modified, even if the home mode settings differ fromthe work mode settings.

In some embodiments, second mode settings are implemented after thesecond mode has been displayed for a predetermined period of time (e.g.,a predetermined period of time after the first input is received, afterthe second mode interface is displayed, and/or after the second input isreceived). For example, the user provides input to override the workmode with the home mode. After a predetermined period of time (e.g.,during which the user does not provide subsequent input to return to thework mode), the device applies the home mode settings.

In some embodiments, a respective mode of the plurality of modesincludes (628) one or more affordances. The one or more affordancesincludes an application affordance (e.g., application initiation icons5068, 5070, 5072, 5074, as shown in FIG. 5I) that, when activated,initiates an application. The one or more affordances includes a mediaaffordance (e.g., content episode/chapter information 5060), that, whenactivated, initiates playback of content. For example, playback isinitiated from a starting point of the content or from a point that isat or before (e.g., 5 seconds before) a position at which playback ofthe content was stopped (e.g., while the device was previously in therespective mode). For example, content episode/chapter information 5060indicates that 21 of 29 minutes of Episode 1 was watched (e.g., when thehome mode was previously active). In response to a user input receivedto select content episode/chapter information 5060 (e.g., a user inputreceived while a focus selector is at a location corresponding tocontent episode/chapter information 5060), the device initiates playbackof Episode 1 from a point in time at which Episode 1 was stopped (orfrom a point in time slightly before the point in time at which Episode1 was stopped) during a previous viewing. For example, playback beginsat the 21 minute mark (or playback begins 5 seconds before the 21 minutemark) in Episode 1. The one or more affordances includes a controlaffordance (e.g., a home automation control item 5064, 5066 as shown inFIG. 5I), that, when activated, initiates a function; and/or aninformation affordance that displays information (e.g., messagenotification 5020 as shown in FIG. 5U or reminder notification 5022 inreminder notifications area 5076 as shown in FIG. 5M). In someembodiments, an interface (e.g., mode settings interface 5080) isprovided for manipulating the inclusion, exclusion, and/or layout ofaffordances for a mode.

In some embodiments, performing the operation in the second mode of thedevice includes (630) modifying a setting for a parameter (e.g., apermission setting for an application and/or an access setting for acommunication type, a contact, or a user; a privacy setting; or anetwork setting) in the second mode of the device. For example, modeinterface 5080 as shown in FIG. 5J is used to modify a network setting,e.g., via user input received at affordance 5092 (for adding a Wi-Finetwork to which the device can connect while the mode is active),affordance 5090 (for removing a Wi-Fi network to which the device canconnect while the mode is active), affordance 5096 (to add an accessorydevice that can connect with the device via Bluetooth), affordance 5094(to remove an accessory device that can connect with the device viaBluetooth), affordance 5082 (to enable or disable Wi-Fi connectivitywhile the mode is active), affordance 5084 (to enable/disable cellularconnectivity while the mode is active), and affordance 5086 (toenable/disable Bluetooth connectivity while the mode is active).

In some embodiments, after returning to the first mode of the device,the device determines (632) that the second set of time and/or devicelocation criteria are met and, in response to determining that thesecond set of time and/or location criteria are met, the deviceinitiates the second mode of the device and applies the setting to theparameter of the device.

For example, the device receives input to override a work mode andactivate a home mode, as described with regard to FIGS. 5I-5J. While thehome mode is active, a network setting is changed (e.g., while the homemode is active, mode settings affordance 5028 is used to access modesettings interface 5080, and in mode settings interface 5080, affordance5084 is switched to an off state to disable cellular connectivity whilethe home mode is active). After the cellular connectivity setting ischanged for the home mode, the device returns to activating the workmode (e.g., in response to receiving user input at affordance 5146corresponding to a “Done” option to apply changes). Subsequently, inresponse to determining that time and/or device location criteria forthe home mode are met, the device activates its home mode. When the homemode is activated (e.g., and cellular connectivity is enabled from aprevious mode), the device applies the cellular connectivity networksetting to disable cellular connectivity.

In some embodiments, overriding the first mode includes (634) applyingthe setting to the parameter of the device in the second mode. Forexample, network settings of the home mode indicate that Wi-Ficonnectivity is enabled for the home mode. When the device overrides awork mode and activates the home mode (e.g., in response to receivinginput to activate the home mode), the device enables Wi-Fi connectivity(e.g., if Wi-Fi connectivity is not already enabled).

In some embodiments, returning to the first mode of the device includes(636) automatically returning to the first mode of the device after apredetermined period of time. In some embodiments, returning to thefirst mode of the device includes automatically returning to the firstmode of the device after the second mode of the device has been activefor the predetermined period of time. In some embodiments, returning tothe first mode of the device includes automatically returning to thefirst mode of the device after a predetermined period of time since auser input (e.g., the first user input or the second user input) wasreceived by the device. In some embodiments, returning to the first modeof the device includes automatically returning to the first mode of thedevice after a predetermined period of time since a change was made tothe second mode.

In some embodiments, while the second mode is active (and the first modeis overridden), the device detects (638) a third input (e.g., a voicecommand and/or a gesture); and, in response to detecting the thirdinput, the device re-activates the first mode of the device. In someembodiments, re-activating the first mode of the device includesdisplaying a first mode interface (e.g., work mode interface 5014). Forexample, while the home mode is active and home mode interface 5054 isdisplayed (e.g., in response to a first input received to override ahome mode, as described with regard to FIGS. 5H-5I), after a secondinput is received to add a reminder notification 5022 to home modeinterface 5054, a third input is received (e.g., while a focus selector5010 is at a location corresponding to work mode affordance 5004, asdescribed with regard to 5150), and the device returns to the work modein response to the third input.

In some embodiments, detecting the first input (that overrides the firstmode of the device) includes (640) detecting a gesture at a locationcorresponding to a mode selection affordance. The gesture is, e.g., atap gesture, a swipe gesture, a drag gesture, a contact that has acharacteristic intensity above a threshold intensity level, and/or acombination of these. For example, a first input includes a tap gesturereceived while a contact/focus selector 5052 is at a locationcorresponding to home mode affordance 5026 to override a work mode andactivate a home mode, as described with regard to FIGS. 5H-5I. In someembodiments, the gesture is a swipe gesture received at indicia of amode, such as a text indicator displayed in a user interface (e.g., on alock screen). For example, a first input includes a swipe gesture thatincludes movement (e.g., by a contact across a touch-sensitive surface112) of a focus selector 5008 from a position 5008 a to 5008 c on a lockscreen to override a work mode and activate a drive mode, as describedwith regard to FIGS. 5E-5G.

In some embodiments, the device includes a touch-sensitive surface 112and one or more sensors for detecting intensities of contacts on thetouch-sensitive surface. While a focus selector is at a location of amode selection affordance, the device detects (642) an increase in acharacteristic intensity of the contact on the touch-sensitive surface112 above a mode display intensity threshold and, in response todetecting the increase in the characteristic intensity of the contactabove the mode display intensity threshold, the device displays aplurality of mode affordances that correspond to at least a subset ofthe plurality of modes (e.g., as a scrollable list) of the device. Forexample, a contact with touch-sensitive surface 112 is detected while afocus selector 5152 is at a location of mode affordance chrome 5024, asindicated in FIG. 5N. In response to detecting an increase in thecharacteristic intensity of the contact above a mode display intensitythreshold (e.g., a light press intensity threshold IT_(L), as indicatedby intensity meter 5156, or another intensity threshold), the devicedisplays mode selection interface 5158, as indicated in FIG. 5O.

In some embodiments, detecting the first input (that overrides the firstmode of the device) includes receiving a selection of a mode affordancethat corresponds to the second mode (e.g., from mode selection interface5158). For example, detecting the first input includes detecting acontact/focus selector 5160 at a location corresponding to home modeaffordance 5026, as indicated at FIGS. 5O-5P.

In some embodiments, the mode selection is received when, after theincrease in the characteristic intensity above the mode displayintensity threshold is detected, a decrease in the characteristicintensity is detected, followed by a subsequent increase above the modedisplay intensity threshold. For example, detecting the first inputincludes detecting a subsequent increase in a characteristic intensityof the contact while focus selector 5160 is at a location correspondingto home mode affordance 5026.

In some embodiments, detecting the first input (that overrides the firstmode of the device) includes detecting an increase in the characteristicintensity of the contact on the touch-sensitive surface above a modeselection intensity threshold (e.g., a light press intensity thresholdIT_(L), as indicated by intensity meter 5156, or another intensitythreshold) when a focus selector is at an indication of the second mode.For example, in response to detecting an increase in the characteristicintensity of the contact on the touch-sensitive surface above a modeselection intensity threshold when a focus selector 5152 is at alocation of activity mode affordance 5002, an activity mode of thedevice is activated (and, in some embodiments, an activity modeinterface is displayed).

In some embodiments (644), the first mode is a work mode (e.g., asindicated by work mode interface 5014) and the second mode is a homemode (e.g., as indicated by home mode interface 5054).

In some embodiments, the first set of time and/or device locationcriteria are met when (646) at least one of a work time criterion or awork location criterion is satisfied.

In some embodiments, a work time criterion is satisfied when a currenttime (e.g., determined by the device, e.g., according to a device clock)is within work time parameters. Work time parameters are, e.g., a userinput time range (e.g., input via a calendar application), a defaulttime range, and/or an automatically determined time range. A work timerange is determined automatically, for example, based on a time rangeduring which a user is typically at a work location (e.g., a worklocation indicated by the user or a location at which the device islocated during a typical work time range). A time range during which auser is typically at a work location is determined, for example, basedon data stored by the device, such as a location of the devicedetermined (using GPS, Wi-Fi or other location information) during atypical work time frame, data from calendar entries, and/or data fromcommunications.

In some embodiments, a work location criterion is satisfied when acurrent location of the device (e.g., a location indicated bypositioning data such as positioning data determined from GPS, Wi-Finetwork, location beacon (e.g., iBeacon), and/or Bluetooth pairing) iswithin work location parameters. For example, a device determines that alocation criterion is satisfied in response to determining that acurrent location of the device is within (and/or within a predetermineddistance from) a location such as a neighborhood, a city block, anaddress, a point location, and/or a set of coordinates (e.g.latitude/longitude). Location parameters are determined, e.g., inaccordance with user input (a text and/or map pin entry indicating alocation) and/or automatically (e.g., based on data stored by thedevice, such as a location of the device determined by the device duringa typical work time frame, data from communications, and/or data fromcalendar entries). In some embodiments, a device determines that a worklocation criterion is satisfied in response to detecting a signal from aWi-Fi network of the work mode (e.g., as indicated by a mode settingsinterface).

It should be understood that the particular order in which theoperations in FIGS. 6A-6C have been described is merely an example andis not intended to indicate that the described order is the only orderin which the operations could be performed. One of ordinary skill in theart would recognize various ways to reorder the operations describedherein. Additionally, it should be noted that details of other processesdescribed herein with respect to other methods described herein (e.g.,method 700) are also applicable in an analogous manner to method 600described above with respect to FIGS. 6A-6C. For example, the contacts,gestures, affordance, user interface objects, intensity thresholds, andfocus selectors described above with reference to method 600 optionallyhave one or more of the characteristics of the contacts, gestures,affordance, user interface objects, intensity thresholds, and focusselectors described herein with reference to other methods describedherein (e.g., method 700). For brevity, these details are not repeatedhere.

The operations described above with reference to FIGS. 6A-6C are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG. 3.For example, detection operations 612 and 614, activation operation 614,performing operation 618 and returning operation 620 are, optionally,implemented by event sorter 170, event recognizer 180, and event handler190. Event monitor 171 in event sorter 170 detects a contact ontouch-sensitive display 112, and event dispatcher module 174 deliversthe event information to application 136-1. A respective eventrecognizer 180 of application 136-1 compares the event information torespective event definitions 186, and determines whether a first contactat a first location on the touch-sensitive surface (or whether rotationof the device) corresponds to a predefined event or sub-event, such asselection of an object on a user interface, or rotation of the devicefrom one orientation to another. When a respective predefined event orsub-event is detected, event recognizer 180 activates an event handler190 associated with the detection of the event or sub-event. Eventhandler 190 optionally uses or calls data updater 176 or object updater177 to update the application internal state 192. In some embodiments,event handler 190 accesses a respective GUI updater 178 to update whatis displayed by the application. Similarly, it would be clear to aperson having ordinary skill in the art how other processes can beimplemented based on the components depicted in FIGS. 1A-1B.

FIGS. 7A-7B illustrate a flow diagram of a method 700 of recommendingand activating a device mode from among a plurality of displayed modeaffordances, in accordance with some embodiments. The method 700 isperformed at an electronic device (e.g., device 300, FIG. 3, or portablemultifunction device 100, FIG. 1A) with a display. In some embodiments,the display is a touch-screen display and the touch-sensitive surface ison or integrated with the display. In some embodiments, the display isseparate from the touch-sensitive surface. Some operations in method 700are, optionally, combined and/or the order of some operations is,optionally, changed.

As described below, the method 700 provides an intuitive way torecommend and activate a device mode from among a plurality of displayedmode affordances. The method reduces the number, extent, and/or natureof the inputs from a user when selecting and activating a mode, therebycreating a more efficient human-machine interface. For battery-operatedelectronic devices, enabling a user to select and activate a mode fasterand more efficiently conserves power and increases the time betweenbattery charges.

The device concurrently displays (702) a plurality of mode affordances(e.g., user-activatable icons that correspond to respective modes of themobile device, such as icons that display thumbnail images of the userinterfaces for the respective modes of the mobile device). In someembodiments, the device concurrently displays the plurality of modeaffordances on a lock screen. For example, as shown in FIG. 5A, modeaffordances 5002, 5004, 5006, corresponding to an activity mode, a workmode, and a drive mode, respectively, are concurrently displayed on alock screen. In another example, as shown in FIG. 5B, mode affordances5004, 5004, 5006, 5026, corresponding to an activity mode, a work mode,a drive mode, and a home mode, respectively, are concurrently displayedin a mode affordance chrome 5024.

The plurality of mode affordances includes (704) a first mode affordancethat, when activated, initiates a first mode of the mobile device. Forexample, work mode affordance 5004, when activated (e.g., in response toa user input received when a focus selector 5008 is at a locationcorresponding to work mode affordance 5004), initiates a work mode ofthe device and, in some embodiments, displays a work mode interface5014, as described with regard to FIGS. 5A-5B.

The plurality of mode affordances includes (706) a second modeaffordance that, when activated, initiates a second mode of the mobiledevice, distinct from the first mode of the mobile device. For example,drive mode affordance 5006, when activated (e.g., in response to a userinput received when a focus selector 5008 is at a location correspondingto drive mode affordance 5006), initiates a drive mode of the deviceand, in some embodiments, displays a drive mode interface 5030, asdescribed with regard to FIGS. 5C-5D.

The device is configured to recommend (708) activating a respective modeof the device in accordance with a determination that a respective setof time and/or device location criteria that correspond to therespective mode of the device are met. For example, in FIG. 5A, a workmode is recommended as indicated by, e.g., the shading and/or bold textof mode affordance 5004. In another example, in FIG. 5B, a work mode isrecommended (and/or is currently active) as indicated by, e.g., theshading of mode affordance 5004. In some embodiments, the recommendationis automatically provided. For example, the recommendation isautomatically provided, e.g., in response to waking the device from asleep state, in response to detecting that time and/or location criteriafor a respective mode are met, and/or in response to detecting that notime and/or location criteria for the plurality of modes are met (inwhich case, in some embodiments, a default mode is recommended).

In some embodiments, the device determines (710) that a first set oftime and/or device location criteria that correspond to the first modeof the device are met. For example, the device determines that a firstset of time and/or device location criteria that correspond to the workmode of the device are met, e.g., as described with regard to (646)above.

In response to determining that the first set of time and/or devicelocation criteria are met, the device displays (712) a visual indicationthat corresponds to a recommendation to activate the first mode of thedevice. In some embodiments, the first mode of the device is recommendedfor activation by visually distinguishing the first mode affordance fromthe other mode affordances in the plurality of mode affordances (e.g.,by highlighting the first mode affordance, enlarging the first modeaffordance and/or altering displayed text of the first mode affordance).For example, in FIG. 5A, to indicate that the work mode is recommendedfor activation, work mode affordance 5004 is shaded and the text of workmode affordance 5004 is bolded. In some embodiments, to indicate thatthe work mode is recommended for activation, work mode interface 5014 isdisplayed, as indicated in FIG. 5B.

While the first set of time and/or device location criteria are met andthe visual indication that corresponds to the recommendation to activatethe first mode of the device is displayed, the device detects (714)activation of a respective mode affordance in the plurality ofconcurrently displayed mode affordances. For example, the device detectsactivation of a work mode (e.g., the device detects a user inputreceived when a focus selector 5008 is at a location corresponding towork mode affordance 5004), as described with regard to FIGS. 5A-5B.

In response to detecting activation of the respective mode affordance inthe plurality of concurrently displayed mode affordances, the device(716) ceases to display the plurality of mode affordances and activatesa mode of the device that corresponds to the respective mode affordance.For example, in response to detecting a user input received when a focusselector 5008 is at a location corresponding to work mode affordance5004, the device ceases to display the plurality of mode affordances5002, 5004, and 5006, as shown in FIG. 5A, and the device activates awork mode (and, in some embodiments, the device displays a work modeinterface, as shown in FIG. 5B).

In some embodiments, displaying the visual indication that correspondsto the recommendation to activate the first mode of the device, inresponse to determining that the first set of time and/or devicelocation criteria are met, occurs (718) while maintaining concurrentdisplay of the plurality of mode affordances. For example, in FIG. 5A,work mode affordance 5004 is shaded and the text of work mode affordance5004 is bolded to visually distinguish work mode affordance 5004 fromactivity mode affordance 5002 and drive mode affordance 5006 that areconcurrently displayed with work mode affordance 5004.

In some embodiments, in accordance with a determination that therespective mode is a vehicle operation mode, a displayed area of atleast one affordance is increased (720) from a default area to a vehicleoperation mode area that is larger than the default area. For example,in FIG. 5G, reminder notification 5046 is shown with a first (e.g.,default) area, and in FIG. 5D, reminder notification 5046 is shown witha second area that is larger than the first area. In another example, inFIG. 5G, reminder icon 5042 is shown with a first (e.g., default) area,and in FIG. 5D, reminder icon 5042 is shown with a second area that islarger than the first area. In some embodiments, in accordance with adetermination that the respective mode is a vehicle operation mode, atleast a part of displayed text is increased from a default text size toa vehicle operation mode text size that is larger than the default textsize. For example, in FIG. 5G, reminder notification 5046 is shown witha first (e.g., default) text size, and in FIG. 5D, reminder notification5046 is shown with a second text size that is larger than the first textsize. In some embodiments, in accordance with a determination that therespective mode is a vehicle operation mode, at least a part ofdisplayed text is shown in conformance with a minimum text size. In someembodiments, in accordance with a determination that the respective modeis a vehicle operation mode, one or more user interface objects areshown in conformance with a minimum user interface object size.

In some embodiments, detecting activation of the respective modeaffordance includes (722) detecting a gesture at a location of therespective mode affordance. The gesture is, e.g., a tap gesture, a swipegesture, a drag gesture, a contact that has a characteristic intensityabove a threshold intensity level, and/or a combination of these. Forexample, detecting activation of work mode affordance 5004 includesdetecting a tap gesture received while a focus selector 5008 is at alocation corresponding to work mode affordance 5004, as described withregard to FIGS. 5A-5B. In some embodiments, the gesture is a swipegesture received at indicia of a mode, such as a text indicatordisplayed in a user interface (e.g., on a lock screen). For example,detecting activation of drive mode affordance 5006 includes detecting aswipe gesture that includes movement (e.g., by a contact across atouch-sensitive surface 112) of a focus selector 5008 from a position5008 a to 5008 c, as described with regard to FIGS. 5E-5G.

In some embodiments, the device includes (724) a microphone (e.g.,microphone 113) and detecting activation of the respective modeaffordance includes detecting a voice command that indicates therespective mode affordance. For example, a drive mode of the device isactivated in response to a detected voice command (e.g., a voice commandincluding a particular word or phrase, such as the word “drive” or thephrase “drive mode”).

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes (726) determining a currenttime at the device (e.g., according to a device clock) and determiningwhether the current time is within time parameters for the first mode.In accordance with a determination that the current time is within thetime parameters for the first mode (e.g., the current time is within theblock of time), the device determines that the first set of time and/ordevice location criteria are met. Time parameters for the first modeare, e.g., a user input block of time (e.g., input via a calendarapplication), a default block of time, and/or an automaticallydetermined block of time. A block of time for a mode is determinedautomatically, for example, based on a time range during which a user istypically at a location associated with the mode (e.g., a locationindicated by the user).

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes (728) determining a currentlocation of the device (e.g., a location indicated by positioning datasuch as positioning data determined from data acquired by a GPS moduleand/or Wi-Fi component of the device), and determining whether thecurrent location is within location parameters for the first mode.Determining whether the current location is within location parametersfor the first mode, includes, e.g., determining whether the currentlocation is within (or within a predetermined distance from) adesignated location such as a neighborhood, a city block, an address, apoint location (e.g., designated with a pin on a map), and/or a set ofcoordinates (e.g. latitude/longitude). In some embodiments, the locationis determined automatically or in accordance with user input. In someembodiments, in accordance with a determination that the currentlocation is within the location parameters for the first mode, thedevice determines that the first set of time and/or device locationcriteria are met. For example, the device detects a signal produced byWi-Fi network 5090 (“Hal”) that is associated with a home mode, asindicated in FIG. 5J. In response to detecting the signal produced byWi-Fi network 5090, the device determines that the current location ofthe device is within location parameters for the home mode of thedevice.

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes (730) determining whetherdevice movement meets movement criteria. For example, in someembodiments, an “on-the-go” mode is activated in response to adetermination that device movement meets movement criteria. In someembodiments, movement criteria are met when output from the deviceaccelerometer indicates a velocity exceeding a predetermined threshold.In some embodiments, determining whether device movement meets movementcriteria includes determining, at a first time, a first location of thedevice; determining, at a second time, a second location of the device;determining a distance between the first location of the device and thesecond location of the device; and, based on the distance between thefirst location and the second location, determining that the first setof time and/or device location criteria are met.

In some embodiments, one or more features of a mode are user-configured.In some embodiments, the device automatically adds features to (and/orremoves features from) a mode, e.g., based on typical usage. Forexample, the device automatically adds an application icon to home modeinterface 5054 for an application that is frequently used when timeand/or location criteria for the home mode are met.

In some embodiments, data from modes (e.g., an amount of time duringwhich the mode has been active) is exposed for use by applications ofthe device and/or an operating system of the device. In someembodiments, information identifying a current mode of the device isavailable and/or communicated to applications (e.g., third partyapplications) of the device. In some embodiments, mode interfaces aregenerated based on user data for the user of the device and/or dataabout usage of the device.)

It should be understood that the particular order in which theoperations in FIGS. 7A-7B have been described is merely an example andis not intended to indicate that the described order is the only orderin which the operations could be performed. One of ordinary skill in theart would recognize various ways to reorder the operations describedherein. Additionally, it should be noted that details of other processesdescribed herein with respect to other methods described herein (e.g.,method 600) are also applicable in an analogous manner to method 700described above with respect to FIGS. 7A-7B. For example, the contacts,gestures, user interface objects, and focus selectors described abovewith reference to method 700 optionally have one or more of thecharacteristics of the contacts, gestures, user interface objects, andfocus selectors described herein with reference to other methodsdescribed herein (e.g., method 600). For brevity, these details are notrepeated here.

The operations described above with reference to FIGS. 7A-7B are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG. 3.For example, determination operation 710, detection operation 708, andactivation operation 716 are, optionally, implemented by event sorter170, event recognizer 180, and event handler 190. Event monitor 171 inevent sorter 170 detects a contact on touch-sensitive display 112, andevent dispatcher module 174 delivers the event information toapplication 136-1. A respective event recognizer 180 of application136-1 compares the event information to respective event definitions186, and determines whether a first contact at a first location on thetouch-sensitive surface (or whether rotation of the device) correspondsto a predefined event or sub-event, such as selection of an object on auser interface, or rotation of the device from one orientation toanother. When a respective predefined event or sub-event is detected,event recognizer 180 activates an event handler 190 associated with thedetection of the event or sub-event. Event handler 190 optionally usesor calls data updater 176 or object updater 177 to update theapplication internal state 192. In some embodiments, event handler 190accesses a respective GUI updater 178 to update what is displayed by theapplication. Similarly, it would be clear to a person having ordinaryskill in the art how other processes can be implemented based on thecomponents depicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 8 shows a functional blockdiagram of an electronic device 800 configured in accordance with theprinciples of the various described embodiments. The functional blocksof the device are, optionally, implemented by hardware, software,firmware, or a combination thereof to carry out the principles of thevarious described embodiments. It is understood by persons of skill inthe art that the functional blocks described in FIG. 8 are, optionally,combined or separated into sub-blocks to implement the principles of thevarious described embodiments. Therefore, the description hereinoptionally supports any possible combination or separation or furtherdefinition of the functional blocks described herein.

As shown in FIG. 8, an electronic device 800 includes a display unit 802configured to display a user interface and a processing unit 804 coupledwith the display unit 802. In some embodiments, the processing unit 804includes: a display enabling unit 806, a detecting unit 808, anactivating unit 810, a performing unit 812, a returning unit 814, anadding unit 816, a determining unit 818, a ceasing unit 820, aninitiating unit 822, a modifying unit 824, and an applying unit 826.

In some embodiments, the processing unit 804 is configured to: enabledisplay (e.g., with display enabling unit 806) a first mode of aplurality of modes of the device, wherein: the plurality of modes of thedevice includes the first mode and a second mode; the first mode of thedevice is active when a first set of time and/or device locationcriteria are met; and the second mode of the device is active when asecond set of time and/or device location criteria, distinct from thefirst set of time and/or device location criteria, are met; and, whilethe first set of time and/or device location criteria are met: while thefirst mode of the device is active, detect (e.g., with detecting unit808) a first input that overrides the first mode of the device; inresponse to detecting the first input, activate (e.g., with activatingunit 810) the second mode of the device; after responding to the firstinput, while the second mode of the device is active, detect (e.g., withdetecting unit 808) a second input; in response to detecting the secondinput, perform (e.g., with performing unit 812) an operation in thesecond mode of the device; and, after performing the operation in thesecond mode of the device, return (e.g., with returning unit 814) to thefirst mode of the device.

In some embodiments, performing the operation in the second mode of thedevice includes adding (e.g., with adding unit 816) an affordance to thesecond mode of the device.

In some embodiments, the processing unit 804 is configured to: afterreturning to the first mode of the device, determine (e.g., withdetermining unit 818) that the second set of time and/or device locationcriteria are met; and, in response to determining that the second set oftime and/or device location criteria are met: activate (e.g., withactivating unit 810) and enable display (e.g., with display enablingunit 806) of the second mode of the device; and enable display (e.g.,with display enabling unit 806) of the affordance in the second mode ofthe device.

In some embodiments, overriding the first mode includes ceasing (e.g.,with ceasing unit 820) to display the first mode of the device andenabling display of the second mode of the device.

In some embodiments, a respective mode of the plurality of modesincludes one or more affordances, and the one or more affordancesincludes: an application affordance that, when activated, initiates(e.g., with initiating unit 822) an application; a media affordance,that, when activated, initiates (e.g., with initiating unit 822)playback of content; a control affordance, that, when activated,initiates (e.g., with initiating unit 822) a function; and/or aninformation affordance that displays information.

In some embodiments, performing the operation in the second mode of thedevice includes modifying (e.g., with modifying unit 824) a setting fora parameter in the second mode of the device.

In some embodiments, the processing unit 804 is configured to: afterreturning to the first mode of the device, determine (e.g., withdetermining unit 818) that that the second set of time and/or devicelocation criteria are met; and in response to determining that thesecond set of time and/or location criteria are met: initiate (e.g.,with initiating unit 822) the second mode of the device; and, apply(e.g., with applying unit 826) the setting to the parameter of thedevice.

In some embodiments, overriding the first mode includes applying (e.g.,with applying unit 826) the setting to the parameter of the device inthe second mode.

In some embodiments, returning to the first mode of the device includesautomatically returning (e.g., with returning unit 814) to the firstmode of the device after a predetermined period of time.

In some embodiments, the processing unit 804 is configured to: while thesecond mode is active, detect (e.g., with detecting unit 808) a thirdinput; and, in response to detecting the third input, re-activate (e.g.,with activating unit 810) the first mode of the device.

In some embodiments, detecting the first input includes detecting agesture at a mode selection affordance.

In some embodiments, the electronic device 800 includes atouch-sensitive surface unit 828 (e.g., coupled with the processing unit804) configured to receive contacts and one or more sensor units 830(e.g., coupled with the processing unit 804) for detecting intensity ofcontacts on the touch-sensitive surface unit 828. The processing unit804 is configured to: while a focus selector is at a location of a modeselection affordance, detecting (e.g., with detecting unit 808) anincrease in a characteristic intensity of the contact on thetouch-sensitive surface unit 828 above a mode display intensitythreshold; and, in response to detecting the increase in thecharacteristic intensity of the contact above the mode display intensitythreshold, enable display (e.g., with display enabling unit 806) of aplurality of mode affordances that correspond to at least a subset ofthe plurality of modes of the device; wherein detecting the first inputincludes receiving a selection of a mode affordance that corresponds tothe second mode.

In some embodiments, the first mode is a work mode and the second modeis a home mode.

In some embodiments, the first set of time and/or device locationcriteria are met when at least one of a work time criterion or a worklocation criterion is satisfied, a work time criterion is satisfied whena current time is within work time parameters; and

a work location criterion is satisfied when a current location of thedevice is within work location parameters.

In accordance with some embodiments, FIG. 9 shows a functional blockdiagram of an electronic device 900 configured in accordance with theprinciples of the various described embodiments. The functional blocksof the device are, optionally, implemented by hardware, software,firmware, or a combination thereof to carry out the principles of thevarious described embodiments. It is understood by persons of skill inthe art that the functional blocks described in FIG. 9 are, optionally,combined or separated into sub-blocks to implement the principles of thevarious described embodiments. Therefore, the description hereinoptionally supports any possible combination or separation or furtherdefinition of the functional blocks described herein.

As shown in FIG. 9, an electronic device 900 includes a display unit 902configured to display a user interface and a processing unit 904 coupledwith the display unit 902. In some embodiments, the processing unit 904includes: a display enabling unit 906, a determining unit 908, adetecting unit 910, a ceasing unit 912, and an activating unit 914.

The processing unit 904 is configured to concurrently enable display(e.g., with display enabling unit 906) of a plurality of modeaffordances, wherein the plurality of mode affordances includes a firstmode affordance that, when activated, initiates a first mode of themobile device; the plurality of mode affordances includes a second modeaffordance that, when activated, initiates a second mode of the mobiledevice, distinct from the first mode of the mobile device; and themobile device is configured to recommend activating a respective mode ofthe device in accordance with a determination that a respective set oftime and/or device location criteria that correspond to the respectivemode of the device are met; determine (e.g., with determining unit 908)that a first set of time and/or device location criteria that correspondto the first mode of the device are met; in response to determining thatthe first set of time and/or device location criteria are met, enabledisplay (e.g., with display enabling unit 906) of a visual indicationthat corresponds to a recommendation to activate the first mode of thedevice; while the first set of time and/or device location criteria aremet and the visual indication that corresponds to the recommendation toactivate the first mode of the device is displayed, detect (e.g., withdetecting unit 910) activation of a respective mode affordance in theplurality of concurrently displayed mode affordances; and, in responseto detecting activation of the respective mode affordance in theplurality of concurrently displayed mode affordances: cease (e.g., withceasing unit 912) to display the plurality of mode affordances; andactivate (e.g., with activating unit 914) a mode of the device thatcorresponds to the respective mode affordance.

In some embodiments, enabling display of the visual indication thatcorresponds to the recommendation to activate the first mode of thedevice, in response to determining that the first set of time and/ordevice location criteria are met, occurs while maintaining concurrentdisplay of the plurality of mode affordances.

In some embodiments, in accordance with a determination that therespective mode is a vehicle operation mode, a displayed area of atleast one affordance is increased from a default area to a vehicleoperation mode area that is larger than the default area.

In some embodiments, detecting activation of the respective modeaffordance includes detecting a gesture at a location of the respectivemode affordance.

In some embodiments, the electronic device 900 includes a microphoneunit 916 (e.g., coupled with processing unit 904); and detectingactivation of the respective mode affordance includes detecting a voicecommand that indicates the respective mode affordance.

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes: determining a current time atthe device, and determining whether the current time is within timeparameters for the first mode; and in accordance with a determinationthat the current time is within the time parameters for the first mode,determine (e.g., with determining unit 908) that the first set of timeand/or device location criteria are met.

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes: determining a currentlocation of the device, and determining whether the current location iswithin location parameters for the first mode; and in accordance with adetermination that the current location is within the locationparameters for the first mode, determine (e.g., with determining unit908) that the first set of time and/or device location criteria are met.

In some embodiments, determining whether the first set of time and/ordevice location criteria are met includes determining whether devicemovement meets movement criteria.

The operations in the information processing methods described aboveare, optionally implemented by running one or more functional modules ininformation processing apparatus such as general purpose processors(e.g., as described above with respect to FIGS. 1A and 3) or applicationspecific chips.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, to therebyenable others skilled in the art to best use the invention and variousdescribed embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. A method, comprising: at a mobile device with adisplay: concurrently displaying a plurality of mode affordances,wherein: the plurality of mode affordances includes a first modeaffordance that, when activated, initiates a first mode of the mobiledevice; the plurality of mode affordances includes a second modeaffordance that, when activated, initiates a second mode of the mobiledevice, distinct from the first mode of the mobile device; and themobile device is configured to recommend activating a respective mode ofthe mobile device in accordance with a determination that a respectiveset of time and/or device location criteria that correspond to therespective mode of the mobile device are met; determining that a firstset of time and/or device location criteria that correspond to the firstmode of the mobile device are met; in response to determining that thefirst set of time and/or device location criteria are met, displaying avisual indication that corresponds to a recommendation to activate thefirst mode of the mobile device; while the first set of time and/ordevice location criteria are met and the visual indication thatcorresponds to the recommendation to activate the first mode of themobile device is displayed, detecting activation of a respective modeaffordance in the concurrently displayed plurality of mode affordances;and, in response to detecting activation of the respective modeaffordance in the concurrently displayed plurality of mode affordances:ceasing to display the plurality of mode affordances; and activating amode of the mobile device that corresponds to the respective modeaffordance.
 2. The method of claim 1, wherein displaying the visualindication that corresponds to the recommendation to activate the firstmode of the mobile device, in response to determining that the first setof time and/or device location criteria are met, occurs whilemaintaining concurrent display of the plurality of mode affordances. 3.The method of claim 1, wherein, in response to detecting activation ofthe respective mode affordance, in accordance with a determination thatthe respective mode affordance corresponds to a vehicle operation mode,a displayed area of at least one affordance displayed on the display isincreased from a default area to a vehicle operation mode area that islarger than the default area.
 4. The method of claim 1, whereindetecting activation of the respective mode affordance includesdetecting a gesture at a location of the respective mode affordance. 5.The method of claim 1, wherein: the mobile device includes a microphone;and detecting activation of the respective mode affordance includesdetecting a voice command that indicates the respective mode affordance.6. The method of claim 1, wherein: determining whether the first set oftime and/or device location criteria are met includes: determining acurrent time at the mobile device, and determining whether the currenttime is within time parameters for the first mode; and in accordancewith a determination that the current time is within the time parametersfor the first mode, determining that the first set of time and/or devicelocation criteria are met.
 7. The method of claim 1, wherein:determining whether the first set of time and/or device locationcriteria are met includes: determining a current location of the mobiledevice, and determining whether the current location is within locationparameters for the first mode; and in accordance with a determinationthat the current location is within the location parameters for thefirst mode, determining that the first set of time and/or devicelocation criteria are met.
 8. The method of claim 1, wherein determiningwhether the first set of time and/or device location criteria are metincludes determining whether device movement meets movement criteria. 9.A mobile device, comprising: a display; one or more processors; memory;and one or more programs, wherein the one or more programs are stored inthe memory and configured to be executed by the one or more processors,the one or more programs including instructions for: concurrentlydisplaying a plurality of mode affordances, wherein: the plurality ofmode affordances includes a first mode affordance that, when activated,initiates a first mode of the mobile device; the plurality of modeaffordances includes a second mode affordance that, when activated,initiates a second mode of the mobile device, distinct from the firstmode of the mobile device; and the mobile device is configured torecommend activating a respective mode of the mobile device inaccordance with a determination that a respective set of time and/ordevice location criteria that correspond to the respective mode of themobile device are met; determining that a first set of time and/ordevice location criteria that correspond to the first mode of the mobiledevice are met; in response to determining that the first set of timeand/or device location criteria are met, displaying a visual indicationthat corresponds to a recommendation to activate the first mode of themobile device; while the first set of time and/or device locationcriteria are met and the visual indication that corresponds to therecommendation to activate the first mode of the mobile device isdisplayed, detecting activation of a respective mode affordance in theconcurrently displayed plurality of mode affordances; and, in responseto detecting activation of the respective mode affordance in theconcurrently displayed plurality of mode affordances: ceasing to displaythe plurality of mode affordances; and activating a mode of the mobiledevice that corresponds to the respective mode affordance.
 10. Themobile device of claim 9, wherein the one or more programs includeinstructions for maintaining concurrent display of the plurality of modeaffordances while displaying the visual indication that corresponds tothe recommendation to activate the first mode of the mobile device, inresponse to determining that the first set of time and/or devicelocation criteria are met.
 11. The mobile device of claim 9, wherein theone or more programs include instructions for, in response to detectingactivation of the respective mode affordance, in accordance with adetermination that the respective mode affordance corresponds to avehicle operation mode, increasing a displayed area of at least oneaffordance displayed on the display from a default area to a vehicleoperation mode area that is larger than the default area.
 12. The mobiledevice of claim 9, wherein detecting activation of the respective modeaffordance includes detecting a gesture at a location of the respectivemode affordance.
 13. The mobile device of claim 9, wherein: the mobiledevice includes a microphone; and detecting activation of the respectivemode affordance includes detecting a voice command that indicates therespective mode affordance.
 14. The mobile device of claim 9, wherein:determining whether the first set of time and/or device locationcriteria are met includes: determining a current time at the mobiledevice, and determining whether the current time is within timeparameters for the first mode; and in accordance with a determinationthat the current time is within the time parameters for the first mode,determining that the first set of time and/or device location criteriaare met.
 15. The mobile device of claim 9, wherein: determining whetherthe first set of time and/or device location criteria are met includes:determining a current location of the mobile device, and determiningwhether the current location is within location parameters for the firstmode; and in accordance with a determination that the current locationis within the location parameters for the first mode, determining thatthe first set of time and/or device location criteria are met.
 16. Themobile device of claim 9, wherein determining whether the first set oftime and/or device location criteria are met includes determiningwhether device movement meets movement criteria.
 17. A non-transitorycomputer readable storage medium storing one or more programs, the oneor more programs comprising instructions, which when executed by amobile device with a display cause the mobile device to: concurrentlydisplay a plurality of mode affordances, wherein: the plurality of modeaffordances includes a first mode affordance that, when activated,initiates a first mode of the mobile device; the plurality of modeaffordances includes a second mode affordance that, when activated,initiates a second mode of the mobile device, distinct from the firstmode of the mobile device; and the mobile device is configured torecommend activating a respective mode of the mobile device inaccordance with a determination that a respective set of time and/ordevice location criteria that correspond to the respective mode of themobile device are met; determine that a first set of time and/or devicelocation criteria that correspond to the first mode of the mobile deviceare met; in response to determining that the first set of time and/ordevice location criteria are met, display a visual indication thatcorresponds to a recommendation to activate the first mode of the mobiledevice; while the first set of time and/or device location criteria aremet and the visual indication that corresponds to the recommendation toactivate the first mode of the mobile device is displayed, detectactivation of a respective mode affordance in the concurrently displayedplurality of mode affordances; and, in response to detecting activationof the respective mode affordance in the concurrently displayedplurality of mode affordances: cease to display the plurality of modeaffordances; and activate a mode of the mobile device that correspondsto the respective mode affordance.
 18. The non-transitory computerreadable storage medium of claim 17, wherein the one or more programsinclude instructions for maintaining concurrent display of the pluralityof mode affordances while displaying the visual indication thatcorresponds to the recommendation to activate the first mode of themobile device, in response to determining that the first set of timeand/or device location criteria are met.
 19. The non-transitory computerreadable storage medium of claim 17, wherein the one or more programsinclude instructions for, in response to detecting activation of therespective mode affordance, in accordance with a determination that therespective mode affordance corresponds to a vehicle operation mode,increasing a displayed area of at least one affordance displayed on thedisplay from a default area to a vehicle operation mode area that islarger than the default area.
 20. The non-transitory computer readablestorage medium of claim 17, wherein detecting activation of therespective mode affordance includes detecting a gesture at a location ofthe respective mode affordance.
 21. The non-transitory computer readablestorage medium of claim 17, wherein: the mobile device includes amicrophone: and detecting activation of the respective mode affordanceincludes detecting a voice command that indicates the respective modeaffordance.
 22. The non-transitory computer readable storage medium ofclaim 17, wherein: determining whether the first set of time and/ordevice location criteria are met includes: determining a current time atthe mobile device, and determining whether the current time is withintime parameters for the first mode; and in accordance with adetermination that the current time is within the time parameters forthe first mode, determining that the first set of time and/or devicelocation criteria are met.
 23. The non-transitory computer readablestorage medium of claim 17, wherein: determining whether the first setof time and/or device location criteria are met includes: determining acurrent location of the mobile device, and determining whether thecurrent location is within location parameters for the first mode; andin accordance with a determination that the current location is withinthe location parameters for the first mode, determining that the firstset of time and/or device location criteria are met.
 24. Thenon-transitory computer readable storage medium of claim 17, whereindetermining whether the first set of time and/or device locationcriteria are met includes determining whether device movement meetsmovement criteria.